私はこれを見た...
preg_match("/.*" . $row['keyword'] . ".*/", $word, $matches);
パターンは何を暗示しようとしていますか?
私はこれを見た...
preg_match("/.*" . $row['keyword'] . ".*/", $word, $matches);
パターンは何を暗示しようとしていますか?
説明 :
/ # start of the regex
. # match anything (any character, etc - except for /n)
* # zero or more times
" . $row['keyword']. " # match the keyword
.* # same as above
/ # end of the regex
これは、( ) 以外の 0 個以上の文字 ( ) が前後にある用語を見つけることを意味し*
ます。\n
.
他の場所で行われない限り、 でラップ$row['keyword']
する必要がありますpreg_quote($row['keyword'], '/')
。
/
は単なるパターン区切り文字であり、.*
「(改行以外の) 任意の文字が 0 回以上繰り返される」ことを意味するため、 in $row['keyword']
、 in にある文字列の出現を単純に検索し$word
ます。
$row['keyword']
が に含まれているかどうかを調べようとしています。また、キーワードに、などのメタ文字が含まれている場合は、$word
を呼び出す方が安全preg_quote
です。$row['keyword']
*
/
\