我需要创建一个只接受数字,超量(-
),加号(+
),空格以及圆括号(
)
的正则表达式。< / p>
我尝试了正则表达式(?\+?\d+)?[-.\s]?\d+[-.\s]?\d+
。
需要的是(123) 123-123-123
,(+91) 123-123-1234
或1234567890
,或123 123 1234
或+92 345 345 3456
或+92 123-123-1234
。
答案 0 :(得分:0)
你的正则表达式以import boto3
glue_client = boto3.client('glue', region_name='us-east-1')
glue_client.start_crawler(Name='name_of_crawler')
开头,这是不正确的。也许你正在寻找(?:\+?\d+)?[-.\s]?\d+[-.\s]?\d+
,这使第一组无法捕捉。
如果你只想匹配数字,连字符( - ),加号(+),空格和圆括号()一次或多次(所以(?\+?\d+)?
也匹配)你可以使用:
如果你想缩小你提供的字符串的匹配范围,这可能是一个选择。
共有两部分:
++++
或(123)
或(+91)
+92
的{{1}}格式123-123-123
^(?:\+\d+|\(\+?\d+\))?(?:\d{10}| ?\d{3}([ -])\d{3}\1\d{3,4})$
<强>解释强>
123 123 1234
^
(?:
\+\d+
|
\(\+?\d+\)
)?
(?:
\d+{10}
|
,它使用捕获组?\d{3}([ -])\d{3}\1\d{3,4}
作为空格或连字符。\1
)