* represent anything
? represent a character
によってドス・マッチ・パターンを実装する方法DOSファイル名のようなPHP
*.test.com
はaaa.test.com
と一致しますが、正規表現*.test.com
が
があるPHPの正規表現/.*\.test\.com/
と似ているようではないtest.com
ドスと一致しますphpでdos-like regexpをテストする組み込み関数がありますか?
* represent anything
? represent a character
によってドス・マッチ・パターンを実装する方法DOSファイル名のようなPHP
*.test.com
はaaa.test.com
と一致しますが、正規表現*.test.com
が
があるPHPの正規表現/.*\.test\.com/
と似ているようではないtest.com
ドスと一致しますphpでdos-like regexpをテストする組み込み関数がありますか?
私があなたのケースで見る限り、glob()
および/またはfnmatch()
はそれを行います。
$pattern = '*.test.com';
var_dump(fnmatch($pattern, 'aaa.test.com'));
var_dump(fnmatch($pattern, 'test.com'));
これは単なるパターンマッチングよりも単純なので、これは正規表現ではありません。私はここで正規表現を使うべき理由を見ないので、少なくともはより効率的に行うべきです。
'fnmatch()'について知りませんでした! – Mchl
fnmatchは私が欲しかったことです、ありがとうm8。 – bajie
@bajie:答えを受け入れることを忘れないでください – KingCrunch
うん。 preg_match() – Mchl
preg_matchは正規表現ですfnmatchは正しい – bajie
これは本当ですが、同じ結果を得るためには単純なstr_replaceでpreg_matchを使うことができます。 KingCrunchが答えを投稿したとき、私は実際にそれを書いていました。 BTW:彼の答えを受け入れることを忘れないでください。 – Mchl