此表达式在html内容中查找包含数字,字母和下划线的文件名。
preg_match_all('/(\w+\.\w{2,4})/', $content);
但是找不到像file-name.txt这样的文件名。如何更改表达式以查找带破折号和其他合法字符的文件名?
答案 0 :(得分:2)
假设,文件后缀不包含非字母/数字:不像[\w-]
这样的char类为你做诀窍吗?你究竟尝试了什么?
preg_match_all('/([\w-]+\.\w{2,4})/', $content);
适用于我的文件名,例如file-name.txt
注意:连字符必须在最后,否则PHP会为char类假定一个范围。