首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python匹配号连字符数

Python匹配号连字符数
EN

Stack Overflow用户
提问于 2017-04-25 02:22:33
回答 3查看 2.4K关注 0票数 0

试图找到正确的Regex表达式来匹配(2或3)位数,后面是连字符,后面是(9,10或11)位数。

总之,字符串有六(6)个潜在排列。

代码语言:javascript
运行
复制
##-######### (2-9)
##-########## (2-10)
##-########### (2-11)
###-######### (3-9)
###-########## (3-10)
###-########### (3-11)
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-04-25 02:27:54

您的正则表达式将如下所示:\d{2,3}-\d{9,11}

  • \d表示0-9
  • {x,y}是前面的字符重复了多少次
票数 6
EN

Stack Overflow用户

发布于 2017-04-25 02:28:29

您能试一下这个表达式吗:

代码语言:javascript
运行
复制
r'\d{2,3}-\d{9,11}'
票数 1
EN

Stack Overflow用户

发布于 2019-04-25 17:01:14

我相信正确的答案是r"([2-3])(-)(9|(1(?:0|1)))"

代码语言:javascript
运行
复制
import re
string = "23-11315310"
match = re.findall( r"([2-3]-)(9|(1(?:0|1)))", string )
matched = []
for i in range( len(match) ):
    matched.append( match[i][0] + match[i][1] )
print( matched )

字符串"23-11315310"输出:['3-11']字符串"23-92-113-105-702-052-153-10"输出:['3-9', '2-11', '3-10', '3-10']

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43600540

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档