从字符串中删除随机空格
Remove random spaces in from a string
在我的文件上使用 pdftotext 后,有一个字段在字符之间有空格;具有人名值的字段。
大部分记录都没有问题,貌似一般姓都有这个问题;尽管名称的格式不同。出现此问题时通常使用大写字母。
清理这些名称的最佳 preg_match 或正则表达式解决方案是什么?它可能被一个字母关闭是可以接受的(例如,如果中间名首字母附加到姓氏;是否有可能以编程方式防止这种情况发生?)
返回值示例:
R U S E L L , 罗伯特 T
塞缪尔·丹尼斯
蒂米奥布莱恩
对于大写字母后跟 space 或行尾,找到这个:
([A-Z])( |$)
...并替换为:
...应该产生:
RUSSELL, Robert T
Samuel DENNIES
Timmy O' BRIEN
我不确定,但你可以试试这个:
$str = preg_replace("~[A-Z']\K ~", '', $str);
在我的文件上使用 pdftotext 后,有一个字段在字符之间有空格;具有人名值的字段。
大部分记录都没有问题,貌似一般姓都有这个问题;尽管名称的格式不同。出现此问题时通常使用大写字母。
清理这些名称的最佳 preg_match 或正则表达式解决方案是什么?它可能被一个字母关闭是可以接受的(例如,如果中间名首字母附加到姓氏;是否有可能以编程方式防止这种情况发生?)
返回值示例:
R U S E L L , 罗伯特 T 塞缪尔·丹尼斯 蒂米奥布莱恩
对于大写字母后跟 space 或行尾,找到这个:
([A-Z])( |$)
...并替换为:
...应该产生:
RUSSELL, Robert T
Samuel DENNIES
Timmy O' BRIEN
我不确定,但你可以试试这个:
$str = preg_replace("~[A-Z']\K ~", '', $str);