如何使用PREG_REPLACE从字符串中删除单字符字词

2022-03-22 00:00:00 regex php preg-replace

给定以下输入-

"I went to 1 ' and didn't see p"

PHP的preg_place函数删除所有单个字符(以及剩余空格)以使输出为-

的正则表达式是什么

"went to and didn't see".

我一直在寻找解决此问题的方法,但找不到。类似的示例没有包括对正则表达式的解释,所以我无法使它们适应我的问题。因此,如果您知道如何执行此操作,请提供正则表达式,但也要将其分解,以便我可以理解它是如何工作的。

干杯


解决方案

尝试此操作:

$output = trim(preg_replace("/(^|s+)(S(s+|$))+/", " ", $input));
  • (^|s+)表示"字符串或空格的开头"
  • (s+|$)表示"空格字符串结尾"
  • S是单个非空格字符

相关文章