Py学习  »  Python

python regex将括号限制为一次

Norman Y • 6 年前 • 2143 次点击  

我在python中遇到了一个问题,程序必须检查用户是否以有效格式输入电话号码,例如: (111)-111-1111 我用python正则表达式编写了这个程序 re.findall 但是,后来我意识到程序允许用户输入任意多的括号,例如: (((((111)-111-1111 而这仍然会作为一种有效的格式通过程序。 问题。是否有方法将括号的数目限制为 (111)-111-1111 ? 我的代码如下:

import re
number=input("Please enter phone number:  " )                    
x=re.findall('([(+*)]\d{3}[(+*)][a-]\d{3}[a-]\d{4})', number)
if (x):
    print("Perfect! Your format is valid: -->  " "'"+number+"'")
else:
    print("Not a valid format, please enter as (###)-###-####")
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/40889
文章 [ 3 ]  |  最新文章 6 年前