字符串替换多次出现

时间:2017-08-23 19:30:24

标签: php string replace

我有以下字符串

Re: Re: Re: Re: Re: Re: Re: Re:

我想要的是改变这个字符串的最终结果是:

Re:

所以我正在寻找的方法是检测多个Re:(中间有空格)并将其更改为只有一个Re:

如果我有任何想法如何实现这一点,我会发布一些代码,但没有真正的线索如何在php

中执行此操作

1 个答案:

答案 0 :(得分:8)

您可以使用此正则表达式:

<?php
$s = "Re: Re: Re: Re: Re: Re: Re: Re: Prueba";
$s = preg_replace("/(Re: ?){2,}/i", "Re: ", $s);
var_dump($s); // Re: Prueba

说明:

(Re: ?) is just Re: and an optional space between them.
{2,}    means 2 or more times (if it's just one, why replace it)
i       so it's case insensitive

Demo