正则表达式删除包括句号,逗号和空格的整个句子

时间:2011-06-10 08:31:34

标签: php regex

我正在尝试构建一个正则表达式来删除整个句子。这句话是:

www.mydomain.com is the best, in fact it is the best. So visit mydomain.com

我尝试了以下

\www\.mydomain\.com is the best\, in fact it is the best\. So visit mydomain\.com/

但它没有帮助。

对此有任何建议吗?

3 个答案:

答案 0 :(得分:1)

这应该是一开始的正斜线,而不是回来。 \w匹配空格,当我怀疑你的意思是它是起始分隔符时。 此外,漫画不需要转义,因此请将\,更改为,

通过这些更改,它对我有用。

* edit *如果你只是匹配一个短语,你可以使用\ Q ... \ E来避免需要转义它中的所有特殊字符。*

答案 1 :(得分:0)

在开始和结束时缺少/。

在vi中,以下内容很好:

s / www \ .mydomain \ .com是最好的,实际上它是最好的\。所以访问mydomain \ .com //

答案 2 :(得分:0)

由于您没有说出您正在使用的语言,因此这是一种perl方式:

my $str = q!www.mydomain.com is the best, in fact it is the best. So visit mydomain.com!;
$str =~ s/.*?\.( |$)//;
print $str;

<强>输出:

So visit mydomain.com

Php版本:

$str = 'www.mydomain.com is the best, in fact it is the best. So visit mydomain.com';
$str = preg_replace('/.*?\.( |$)/', '', $str);
echo $str;

这会产生相同的输出。