Войти

Показать полную графическую версию : проблема - Regular Expression и русская буква "ч"


Narcm
24-02-2004, 17:50
имеется текстовой файл(на русском) и такой вот код


PHP:
--------------------------------------------------------------------------------
$file = "C:\Inetpub\wwwroot\members\data\2004\4\3.txt";
$fd = fopen ($file, "r");
   $contents = fread ($fd, filesize ($file));
   fclose ($fd);
   print $contents."<br>";
   /* Extract all words matching the regexp from the current line: */
   preg_match_all("/b[a-zA-Zа-яА-Я]+b/",$contents,$words);
   print_r($words)."<br>";

--------------------------------------------------------------------------------



нужно считать файл в переменныю $content что и происходит
затем надо $contents разбить на массив где каждый элемент массива
это одно слово

ну напрмер файл 3.txt содержит одну строку
"Вечно молодой вечно пьяный"

после выполнения скрипта получаем такой вот массив $word
Array ( [0] => Array ( [0] => Вечно [1] => молодой [2] => вечно [3] => пьяный ) )

но вот что странное я заметил - если слово начиняется с буквы "ч" то она просто пропадает

ну напрмер если файл 3.txt содержит одну строку
"зачем через голову прыгать"

после выполнения скрипта получаем такой вот массив $word
Array ( [0] => Array ( [0] => зачем [1] => ерез [2] => голову [3] => прыгать ) )

т.е. слово "через" превратилось "ерез"

и так со всеми словами которые начинаются на букву "ч"

я не понимаю что происходит
в чем проблема??

Prisoner
24-02-2004, 22:46
Забавно... а почему не считать файл в массив используя функцию file(), а затем к каждому элементу массива применяем функцию explode с первым параметром в виде пробела. Т. е. код такой получается:

$File = file('some_file_with_path_or_without');
foreach ($File as $Str)
 $Words[] = explode(' ', trim($Str));


PS на счет буквы ч ответа пока не знаю :(.

Narcm
25-02-2004, 13:24
потому что в реальности это не txt а html файл целая html
страница а я привел только пример который показывает мою проблему

т е в реальности файл считывает в переменную оттуда вытаскиваются все html тэги и получается определенна string переменная.




© OSzone.net 2001-2012