我在PHP正则表达式替换一切,我不想用空格替换所有的标点符号除了缩写
/[^a-z0-9\p{L}]/siu
但有这一个例外,我想继续为标点符号的缩写。
例子:
FBIFederal.Bureau.of.Investigation => 'FBI联邦统计局 调查'
SWATTeam => '特勤队'
应:
FBIFederal.Bureau.of.Investigation =>'FBI联邦局 调查'
S.W.A.T.Team =>'S.W.A.T.团队“
PHP代码:
$s = "F.B.I.Federal.Bureau.of.Investigation";
return preg_replace('/[^a-z0-9\p{L}]/siu', " ", $s);
所以逻辑是,它应该检查的第一场比赛的第二个字符,如果它是一个”“。字符,然后不要替换。 不知道这是否可能与正则表达式,然后我会很感激与PHP的替代。
其他缩写呢?像“博士”,“夫人”等? –
实际上,没有可靠的方法来做到这一点。 –
@WiktorStribiżew嗯,很好的问题..我认为这些会更难。我可以硬编码这些忽略 – Rumplin