PHP preg_replace除特定字符串外的所有内容

时间:2014-08-09 22:15:12

标签: php regex

在字符串中:

$text = 'The quick brown fox jumps over the lazy dog';

除了“狐狸”之外,我怎么能preg_replace所有?

类似的东西:

$new = preg_replace('(.*?)|^[fox]|(.*?)si', '', $text);

注意:
我正在寻找preg_replace()解决方案,而不是explode()或preg_match_all()。

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

我不太了解你的需要,但是如何:

$new = preg_replace('/^.*?(fox).*?$/si', '$1', $text);

答案 1 :(得分:0)

您可以使用此正则表达式来抓取path/whatever,如您所指示的那样。

(path\/[^\[\]\s]+)

<强> Working demo *

enter image description here

我不清楚的是你的输出字符串,因为你把:

"path/file1.txtpath/file2.jpg[/imgpath/file3 to a [i"

我的正则表达式可以帮助您生成:

"path/file1.txtpath/file2.jpgpath/file3"

你能确认上面还可以吗?