我正在寻找优雅的正则表达式来清理括号,内容看起来像文件名。
[Nibh justo] elit Nulla [link.pdf] auctor ipsum molestie (link.pdf)
Condimentum euismod non [link.xls](link.xls) [link.doc](link.doc) tempus
In [Curabitur] et
结果应该是:
Nibh justo elit Nulla auctor ipsum molestie Condimentum euismod
non tempus In Curabitur et
我相信一定有一个捷径可以做到这一点。 (文件的意思很简单 - 包括点。不需要句子检查。)
感谢帮助
最佳答案
是这样的吗?
$str = '[Nibh justo] elit Nulla [link.pdf] auctor ipsum molestie (link.pdf)
Condimentum euismod non [link.xls](link.xls) [link.doc](link.doc) tempus In
[Curabitur] and other [./beta/link.pfd]';
$str = preg_replace('`(\(|\[)[\w/\.-]+\.[a-z]+(\)|\])`i', '', $str);
$str = str_replace(array('[', ']'), '', $str);
echo $str;
结果是:
Nibh justo elit Nulla auctor ipsum molestie Condimentum euismod
non tempus In Curabitur and other
关于php regex - 干净的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10396396/