我想做一个正则表达式,可以检测印度地址的密码。问题是,在输入完整的地址后,它还需要移动的号码的前6位数字。所以,我想让它在这样一种方式,它应该只检测密码,但没有数字从移动的号码。
我尝试的正则表达式是:
([1-9]{1}[0-9]{5}|[1-9]{1}[0-9]{3}\\s[0-9]{3})
字符串
地址模式为House No. XXXX, Sector 9, CITY NAME, STATENAME - XXXXXX, Mob. No.- 9999XXXXXX
,
一个样本:House No. 322/4, Salah, Sundernagar, Distt. mandi, Himachal Pradesh - 175018(Pincode), Mob. No. - 9999999999
个
3条答案
按热度按时间mbzjlibv1#
你只需要在正则表达式之前和之后添加
\b
,这样我们就不会匹配部分数字。\b
用于word-Bboundary:\b[1-9]\d{5}\b
个我用
\d
代替了[0-9]
,因为它更常见。但是如果你喜欢的话,你可以离开[0-9]
。运行中:https://regex101.com/r/XyDm6G/1
如果你想处理pincode格式
123 456
,那么你可以将regex改为:\b[1-9]\d{2}\s?\d{3}\b
个正在运行:https://regex101.com/r/XyDm6G/2
bis0qfac2#
用数字替换电话号码
字符串
输出量:
型
isr3a4wc3#
此正则表达式将只检测PIN码,而不匹配移动的号码中的任何数字。
字符串
说明:
\b
:匹配整个单词的模式的单词边界。\d{6}
:精确匹配6位数字(密码格式)。