如何使用 preg_replace
实现这一点,替换匹配的正则表达式?
例如,我想要字符串:
2014 年有一部关于艾伦图灵一生的电影 8
替换为
2014 年有一部电影讲述了艾伦·图灵的一生
不替换年份的四位数字或任何其他非一位数字。
最佳答案
您可以在此处使用单词边界\b
:
$s = "There was a movie made of Alan Turing's life in 2014 8";
$s = preg_replace('#\b\d\b#', '', $s);
//=> There was a movie made of Alan Turing's life in 2014
\b\d\b
将匹配任何一位数字,但不会匹配多于一位数字。
关于PHP 正则表达式删除所有个位数整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28591971/