0

困惑した。以下の IF PREG_MATCH を使用して、単語全体と他の単語の一部である単語を区別しています。このスクリプト、およびこのコマンドに依存する他のスクリプトで突然機能しなくなりました。

その結果、単語の一部が検出されますが、単語全体のみを検索するように明示的に指示されていることがわかります。

$word = preg_replace("/[^a-zA-Z 0-9]+/", " ", $word);                                        

if (preg_match('#\b'.$word.'\b#',$goodfile) && (trim($word) != ""))  { 

        $fate = strpos($goodfile,$word);
        print $word ."  ";
        print $fate ."</br>";
4

2 に答える 2

0

タイトルが示すように、テキスト ファイルの行の最初の単語だけを読みたい場合は、別の方法を試してください。

// Get the file as an array, each element being a line
$lines = file("/path/to/file"); 

// Break up the first line by spaces
$words = explode(" ", $lines[0]); 

// Get the first word
$firstWord = $words[0]; 
于 2011-04-16T01:30:06.673 に答える
0

これは爆発よりも速くてきれいで、配列を作成しません

$first_word = stristr($lines, ' ', true); 
于 2011-04-16T01:35:51.797 に答える