Konrad Karpieszuk

Konrad Karpieszuk WordPress Plugin
Compatibility
Assurance for WPML

Temat: zamiana cudzyslowow na polskie

witam

Jak bedzie wygladalo wyrazenie regularne, ktore taki tekst:

Mama powiedziała "zzuj kalosze"!

Zamieni na tekst taki sam, ktory bedzie mial polskie cudzyslowy, tzn pierwszy dolny, drugi gorny. (sorry ale pamietam teraz jakie maja kody). Czyli wyrazenie zamieni tylko cudzyslow ktory przed soba ma spacje, a za soba od razu dowolny znak.
Kamil Szalewski

Kamil Szalewski myślę, projektuję i
staram się tworzyć

Temat: zamiana cudzyslowow na polskie

Od razu Ci napsiałem:

function add_quotation_mark($string) {
if(eregi("^\"([A-Za-z0-9 ]+)\"$", $string)) {$string[0] = null;
$string = substr($string,0,strlen($string)-1); return "„".$string."”";
}
return $string;
}echo add_quotation_mark("\"moje kapcie\"");
echo add_quotation_mark("moje kapcie");


Kody są na http://www.poradnik-webmastera.com/artykuly/html/znaki..., tu zamienia przy dodawaniu...

Pozdro,
KamilKamil Szalewski edytował(a) ten post dnia 16.03.10 o godzinie 11:59
Konrad Karpieszuk

Konrad Karpieszuk WordPress Plugin
Compatibility
Assurance for WPML

Temat: zamiana cudzyslowow na polskie

jakos to mi nie dziala. jak dobrze widze to zadziala tylko na stringach zaczynajacych sie od znaku cytatu. mi chodzi o cos, co w stringu wynajdzie cytat i zmieni w nim znak cytowania na dolny.

czyli Twoje zadziala na:

"Zzuj kalosze"

ale nie zadziala (a chce by dzialalo) na:

Mama powiedziała "Zzuj kalosze"!
Marcin P.

Marcin P. Zakamuflowany
programista

Temat: zamiana cudzyslowow na polskie

Może zwykłe:
preg_replace('#\s"([^"]+)"#', ' „$1”', $string);
Jarek Tkaczyk

Jarek Tkaczyk www.GoHolidays.pl -
siła napędowa

Temat: zamiana cudzyslowow na polskie

Marcin P.:
Może zwykłe:
preg_replace('#\s"([^"]+)"#', ' „$1”', $string);

Dokładnie, a na wypadek cudzysłowu na początku nowej linii lekki tuning:

preg_replace('#(\s"|^")([^"]+)"#', ' „$2”', $string);



Wyślij zaproszenie do