我正在使用 PHP,但不太擅长使用正则表达式。我需要一个 preg_replace ,如果字母或数字相邻,它可以添加空格。
这些是场景:
mystreet12 -> mystreet 12
mystreet 38B -> mystreet 38 B
mystreet16c -> mystreet 16 c
my street8 -> my street 8
Thanks.
您可以使用环视来匹配此类位置,如下所示:
preg_replace('/(?<=[a-z])(?=\d)|(?<=\d)(?=[a-z])/i', ' ', $str);
根据您定义“字母”的方式,您可能需要调整[a-z]
.
需要进行环视才能使其与以下字符串正常工作:
0a1b2c3
没有解决方案就会失败。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)