从字符串中删除随机空格

时间:2015-03-13 20:48:46

标签: php regex preg-match data-cleansing

在我的文件上使用pdftotext后,字段之间有一个空格;具有人名称值的字段。

大多数记录都很好,似乎通常姓氏都有这个问题;虽然名称的格式不同。出现此问题时,通常使用大写字母。

清理这些名称的最佳preg_match或正则表达式解决方案是什么?它可能被一个字母关闭是可以接受的(例如,如果中间的首字母被附加到姓氏;是否可以以编程方式阻止它?)

返回值的示例:

R U S S E L L , Robert T 
Samuel D E N N I E S
Timmy O ' B R I E N

2 个答案:

答案 0 :(得分:0)

对于大写字母后跟空格或行尾,请找到:

([A-Z])( |$)

...并替换为:

$1

......应该产生:

RUSSELL, Robert T
Samuel DENNIES
Timmy O' BRIEN

答案 1 :(得分:0)

我不确定,但你可以试试这个:

$str = preg_replace("~[A-Z']\K ~", '', $str);