使用正则表达式检测街道后重复的门牌号
检测末尾重复门牌号的正则解决方案
直接用这个正则表达式就能精准匹配你说的重复情况:
\b(\S+)\s+\1$
拆解规则逻辑:
\b:锁定单词边界,避免把字符块的一部分误判成完整门牌号(\S+):捕获一个或多个非空白字符(即你说的门牌号字符块),存入第一个捕获组\s+:匹配两个字符块之间的一个或多个空格\1:反向引用刚才捕获的内容,要求和前面的门牌号完全一致$:锚定到字符串末尾,确保这两个重复的字符块是在内容的最后
匹配示例:
- 会被匹配(存在重复):
Randomstreet 33a 33a、Randomstreet 45 45 - 不会被匹配(格式正确):
Randomstreet 33a、Randomstreet 45、Randomstreet 33a 34
用这个正则做检测就行,只要匹配上就说明是需要修正的重复门牌号情况。
内容的提问来源于stack exchange,提问作者bzng
相关产品推荐
相关产品推荐

