preg_match の大文字と小文字を区別しないようにする
質問に示されているコード スニペットでは、大文字と小文字の区別により、意図した結果が得られません。これを修正するには、正規表現で i 修飾子を使用して、大文字と小文字が区別されないようにすることができます。
コードを変更する方法は次のとおりです。
preg_match("#(.{100}$keywords.{100})#i", strip_tags($description), $matches);
区切り文字 (この場合は #) の後に i 修飾子を追加すると、正規表現では大文字と小文字が区別されなくなります。これは、大文字と小文字の両方に一致することを意味し、元のコードの大文字と小文字の区別の問題が解決されます。
i 修飾子は、# だけでなく、任意の区切り文字とともに使用できます。 / 区切り文字を使用している場合は、次のように i 修飾子をその後に追加します。
preg_match("/your_regexp_here/i", $s, $matches); // i means case insensitive
i 修飾子が設定されている場合、パターン内の文字は大文字と小文字の両方に一致します。これにより、入力文字列内の文字の大文字と小文字に関係なく、コードが正しく動作するようになります。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3