- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:【PHP】関数から渡した引数を正規表現で扱うには?)
【PHP】関数から渡した引数を正規表現で扱うには?
このQ&Aのポイント
- PHPの関数に渡した引数を正規表現で扱いたい場合、どのように記述すれば良いのでしょうか?
- 例えば、特定のディレクトリ内のファイル名を正規表現で絞り込むために、関数を呼び出して引数に指定したいとします。
- しかし、引数が認識されない問題に直面しています。解決方法を教えていただけないでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
とりあえずpreg系の基本だけ理解した方がいいでしょう ・検索文字はデリミタで囲う http://www.php.net/manual/ja/regexp.reference.delimiters.php ・予約語との競合をさけるため変数でパターンを渡すときにはpreg_quote()でエスケープする http://www.php.net/manual/ja/function.preg-quote.php 当然処理するためのメタ文字はクォートしてはいけません <?PHP $delimiter="/"; $pattern=$delimiter."^".preg_quote($x).$delimiter; preg_match($pattern, $y);
その他の回答 (2)
- t_ohta
- ベストアンサー率38% (5238/13705)
回答No.2
function file_search($x) の定義で、関数内で使用する $count や $filelist が渡されていないので正常に動作しないのではないでしょうか。
質問者
お礼
メタ文字指定の記述が間違っておりました。ありがとうございました。
noname#244856
回答No.1
PHP Manual - glob http://www.php.net/manual/ja/function.glob.php この関数では不十分ですか?
質問者
お礼
一発で結果が得られました。 ありがとうございます!
お礼
メタ文字をクォートしてしまっていたのがミスだったようです。 デリミタの囲い方など、解りやすくご説明いただきありがとうございました。