从字符串中删除单个字母

Dyl*_*lan 1 php regex

我有一个字符串: Bruce A Johnson

我想要它Bruce Johnson.

如何A使用PHP从字符串中删除单个?(只需删除1个字符的所有"单词")

Mar*_*iot 12

像这样的东西:

preg_replace('/\b\w\b\s?/', '', $string);
Run Code Online (Sandbox Code Playgroud)

这表示删除任何一侧具有单词边界的单个单词字符,并可选择删除尾随空格.

因此b test a test foo c会产生test test foo.

如果您可能有一些尾随标点符号(例如Bruce A. Johnson),您可以使用此表达式删除标点符号:

preg_replace('/\b\w\b(\s|.\s)?/', '', $string);
// 'b test a, test foo c' -> 'test test foo'
Run Code Online (Sandbox Code Playgroud)