私はpreg_match($regexp, $filename)
を使ってファイルとディレクトリのいくつかの名前を解析しようとしています。具体的には、 "directory/subdirectory/filename.h"のような文字列を指定すると、文字列が "filename.h"で終わるかどうかチェックしたい。PHPの正規表現 - ピリオド '。'の問題character in preg_match
すべてのリテラル(たとえば '/'と '。')をエスケープすると、私のテストは次のようになります:
preg_match('/filename\.h$/', ''directory\/subdirectory\/filename\.h');
ただし、上記のコード行はfalseを返します。
奇妙なことに、次のコード行はtrueを返します。正規表現は、正規表現が'/filename\.h$/'
ある'/\.h$/'
が、偽である場合、これはtrueと評価する理由
preg_match('/\.h$/', 'directory\/subdirectory\/filename\.h');
誰でも知っていますか?
グレート、この作品!私は本当にあなたの助けに感謝します。 Upvoted。 :) – solvingPuzzles