2017-01-25 7 views
0

この表現は、数字、英字、下線を含むHTMLコンテンツのファイル名を検索します。pregファイルの内容と一致するHTMLコンテンツ

preg_match_all('/(\w+\.\w{2,4})/', $content); 

ただし、file-name.txtのようなファイル名は見つかりません。ダッシュやその他の法的な文字でファイル名を見つけるために式を変更するにはどうすればよいですか?

+0

*その他の有効な文字*を定義します。 –

+0

最小限はダッシュですね。 filenameにはスペースを入れることができますが、奇妙な結果が生じることがあります(たとえば、aaa .bbbはファイル名またはテキストの表示になります)。ダッシュは私が表現に加えたいと思う法的な性質です。私はそれを試みたが、成功しなかった。 – tomasr

答えて

2

ファイルの接尾辞には英字/数字が含まれていないと仮定します。[\w-]のようなcharクラスはあなたのためのトリックではありませんか?何を試してみましたか?ハイフンは終わりにする必要があり、そうでない範囲はPHPで文字クラスのために仮定されます。ファイルname.txt

のようなファイル名用心のために私のために

preg_match_all('/([\w-]+\.\w{2,4})/', $content);作品。

関連する問題