尝试找到正确的Regex表达式以匹配(2或3)数字后跟连字符后跟(9,10或11)数字。
总之,字符串有六(6)种潜在的排列。
##-######### (2-9)
##-########## (2-10)
##-########### (2-11)
###-######### (3-9)
###-########## (3-10)
###-########### (3-11)
答案 0 :(得分:4)
您的正则表达式如下所示:\d{2,3}-\d{9,11}
\d
代表0-9
{x,y}
是前一个字符重复的次数答案 1 :(得分:1)
你能试试这个表达式吗?
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="WindowsAzure.ServiceBus" version="4.0.0" targetFramework="net452" />
</packages>
答案 2 :(得分:0)
我相信正确的正则表达式答案是r"([2-3])(-)(9|(1(?:0|1)))"
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']