PHP正则表达式删除所有个位数整数


PHP Regular Expression to remove all single-digit integers

如何用preg_replace替换匹配的正则表达式来实现这一点?

例如,我想要字符串:

There was a movie made of Alan Turing's life in 2014 8

将被取代

There was a movie made of Alan Turing's life in 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将匹配任何一位数字,但不会匹配超过一位的数字。