Python 正则表达式检查字符串是否表示5位或6位数字
我需要检查给定的字符串是否代表5或6位数字,然后打印“是”,否则打印“否”。数字不应包含前导零,例如: 012345-----/否 0123456---//否 12345-----/是 我在用蟒蛇3。现在我知道我的正则表达式应该是这样的:Python 正则表达式检查字符串是否表示5位或6位数字,python,python-3.x,regex,Python,Python 3.x,Regex,我需要检查给定的字符串是否代表5或6位数字,然后打印“是”,否则打印“否”。数字不应包含前导零,例如: 012345-----/否 0123456---//否 12345-----/是 我在用蟒蛇3。现在我知道我的正则表达式应该是这样的: re.search('\d{5,6}') 但它只适用于开头不带0的数字。你知道如何解决这个问题吗?试试这个:^[1-9]\d{4,5}$ 说明: ^从字符串开头开始 [1-9]第一个字符必须是介于1和9之间的数字 \d{4,5}再匹配4或5个必须为数字的字
re.search('\d{5,6}')
但它只适用于开头不带0的数字。你知道如何解决这个问题吗?试试这个:
^[1-9]\d{4,5}$
说明:
从字符串开头开始^
第一个字符必须是介于1和9之间的数字[1-9]
再匹配4或5个必须为数字的字符\d{4,5}
直到字符串结束$
\b[1-9]\d{4,5}\b
怎么样?@jdaz可能4,5
如果第一个数字已经非零?@tadman是的,更新了,非常感谢