动态查找替换字符串

时间:2018-04-17 13:46:08

标签: php

我想摆脱PHP变量的一部分(如果它存在)。但困难在于这部分包含一个动态元素(数字),它们总是不同的。而剩下的部分在文字中的长度并不总是一样。

  

$ string ="这是一个例子10(+)t / m 16人&#34 ;;

     

$ string ="这也是一个例子12(+)t / m 44人&#34 ;;

     

$ string ="这是最后的例子&#34 ;;

期望的结果应该是:

  

$ string ="这是示例一&#34 ;;

     

$ string ="这也是一个例子&#34 ;;

     

$ string ="这是最后的例子&#34 ;;

所以它需要过滤掉" *(+)t / m * person"我需要做很多这样的事情,因此需要一个紧凑而清晰的解决方案。

2 个答案:

答案 0 :(得分:2)

$words = preg_replace('/\d+/', '', $words );

这将删除所有数字而不是剩下的所有数字

$str = '(+) t/m person ';
    $new= preg_replace("~[^a-z0-9:]~i", "", $str); 
    echo '<pre>'.$new.'</pre>';

看看here

答案 1 :(得分:0)

如果你要做的就是从另一个字符串中删除一个字符串,最简单的方法就是使用str_replace -

http://php.net/manual/en/function.str-replace.php

以这种方式:

str_replace(“*(+)t / m * person”,“”,$ string)

但这依赖于你知道代替星星的数字。

适用于任何问题的更通用的解决方案可以使用另一个内置函数 -

fnmatch - http://php.net/manual/en/function.fnmatch.php