Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.138.174.174] |
|
Сообщ.
#1
,
|
|
|
Что написать вместо <cyrcodes>?
preg_match( "[<cyrcodes>]", $string ); |
Сообщ.
#2
,
|
|
|
может быть "[а-яА-Я]"?
или попробывть "[[:alpha:]]" - только надо, чтобы были правильно установлены национальные установки... ...сам не знаю как их конкретно установить, но в книжке написано: Цитата "[[:alpha:]]" - соответствует любым строкам, содержащим знаки алфавита, отвечающего национальным установкам |
Сообщ.
#3
,
|
|
|
Цитата rvt,3.09.04, 14:17 Что написать вместо <cyrcodes>?
вот пример: preg_match( "[<cyrcodes>]", $string );</div></div> function replace_images_urls($scr, $urls) { preg_match_all("/<IMG[\040-\075\077-\377]*>/i", $scr, $ar); $vv = array(); $flag = 0; foreach($ar[0] as $v) { $s = preg_replace("/(.*src=\")(.*)(\")(.*)/i", "\\2", $v); $s1 = str_replace("file:///","",$s); $s1 = str_replace("/","\\",$s1); $s1 = preg_replace("/%([0-9A-F]{2})/ie", "chr(hexdec('\\1'))", $s1); if (preg_match("/^\w:/i", $s1) || preg_match("/^\\\\\\\\/i", $s1)) { $s2 = substr(strrchr($s1, "\\"),1); if (!$s2) $s2 = $s1; $s1 = $s2; $flag = 1; foreach($urls as $v) { if (!strcasecmp($v['original'], $s1)) { $scr = str_replace($s, $v['url'], $scr); $flag = 0; } } } } if ($flag) return array(); return $scr; } |
Сообщ.
#4
,
|
|
|
я знаю еще 2 варианта поиска кирилицы
один из них заключается в использовании встроеной linux-функции grep: exec("echo("какая-нибудь фраза") | grep 'pattern'"", $output) второй способ: использование Perl-совместимых RegExp и метода setlocale() setlocale(LC_ALL, 'ru_RU.CP1251'); $result = preg_match('/\w+/', "слово на русском"); |
Сообщ.
#5
,
|
|
|
Цитата zer, 4.09.04, 17:43 preg_match_all("/<IMG[\040-\075\077-\377]*>/i", $scr, $ar); Т.е. имелось ввиду, что \040-\075\077-\377, это коды русских символов? |
Сообщ.
#6
,
|
|
|
Коды я нашел методом
for ( $i = 0; $i < 256; $i++ ) { echo chr($i)." | ".$i."<br>"; } А может это не сработать где-нибудь, из-за другой кодировки в PHP? И вообще как её можно поменять в PHP? Перекомпиляцией? |
Сообщ.
#7
,
|
|
|
а чем не подходит setlocale()?
|
Сообщ.
#8
,
|
|
|
НеНасколько я понял у setlocale разные наборы значений параметров в зависимости от ОС. У меня Win, на хостинге FreeBSD...
|