address='''No-33-6,BEML Layout,Basaveshwaranagara 8th Main,Kamala Nagar,Near Academy Of Science and Knowledge,Bengaluru,Karnataka 560079'''
我试过用下面的模式。但是*匹配所有字符
re.findall('[n][o].*',adress)
基于第一个术语(不存在)和最后一个术语(6位pincode/zipcode)进行匹配
output:No-33-6,BEML Layout,Basaveshwaranagara 8th Main,Kamala Nagar,Near Academy Of Science and Knowledge,Bengaluru,Karnataka 560079
如果我正确理解您的查询,您希望匹配以开头的字符串模式
以最后一项6位pincode/zipcode结束
以及中间的所有文字。你知道吗
您可以通过以下方式实现这一点:
这将返回:
请看这里:https://regex101.com/r/2pXcMI/4
从头到尾:
首先我们要匹配前缀“No”,所以我们只需使用两个没有方括号或方括号的字母。你知道吗
接下来,我们必须确保at的数字是后缀。在大多数情况下,这个数字的长度不会改变,但是我的答案包含了一个任意长度整数的方法。你知道吗
如果两者都存在,那么匹配就是真的。你知道吗
所以我们想收集里面的所有信息。这是用
.+
完成的,意思是“除换行符外的一个或多个字符”下面呢?你知道吗
这对你有用吗?应该根据您尝试的正则表达式匹配第一个单词,然后捕获地址中的最后6位数字。你可以在这里测试https://regex101.com
相关问题 更多 >
编程相关推荐