• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:glob関数のパターンマッチについて)

Glob関数のパターンマッチについて

このQ&Aのポイント
  • Glob関数を使用してフォルダ内のファイルを取得する際、パターンに使われる記号が含まれていると正常に取得できません。
  • エスケープ記号を使ってパターンマッチを行う関数では正常に機能する一方、Glob関数ではうまくいかない場合があります。
  • 他のエスケープの方法を知りたいと考えています。解決策をご存じの方、ご教示いただけませんか?

質問者が選んだベストアンサー

  • ベストアンサー
  • JaneDue
  • ベストアンサー率75% (263/350)
回答No.2

ちょっと試してみましたが、環境によって結果が結構異なりますね。 \が効いたり効かなかったり…、あるいは何故か GLOB_NOCHECKオプションで print_r( glob("ero_movie/[20130302]書類/*",GLOB_NOCHECK)); でうまく動作したり…。 環境に左右されないのは [] の中で[や]自身を指定する方法 print_r( glob("ero_movie/[[]20130302[]]書類/*")); とか、任意の一文字?で print_r( glob("ero_movie/?20130302?書類/*")); でがまんするとか。

kyotokyo
質問者

補足

うおおおおおおおおおおおお 出来ました。長年もやもやしていた部分が解決しました。 []で[自体を指定するのは思いつきませんでした。 よく考えたら[自体を?(任意の一時)にしてしまう方法もあるんですね。 本当にご回答ありがとうございます。

その他の回答 (1)

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

globのマニュアルを読むと、こんなのとか。

kyotokyo
質問者

補足

glob('ero_movie/\[20130203]書類/*'); glob("ero_movie/\[20130203]書類/*"); でもダメでした。

関連するQ&A