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

标签 php regex

如何使用 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/

相关文章:

php - php面向对象登录系统的类设计

php - MySql PHP 查询从现有 csv 中过滤名称

php - 如何使用php在行之间获取字符串

平台之间的 C++ 正则表达式差异

python - 在 Python 中使用正则表达式匹配可选的完整字符串

java - 生成具有一定平均差的随机数列表

php - 计算后如何正确换算小数

java - java(android)中的正则表达式可防止除一个之外的其他网址

regex - Perl Regexp::Common 包在与单词边界一起使用时不匹配某些实数

正则表达式问题 - 在句子中查找类似密码的单词