我正在尝试解决一个问题,但我发现最好的解决方案是使用正则表达式。
我没有关于正则表达式的高级知识,所以我真的需要你的帮助。
问题是我需要确定一个字符串是电话号码还是我们在巴西使用的手机,如下所示:
电话号码可以采用以下格式:
0 + XX + XXXXXXX = 01121234567
或者
XX + XXXXXXXX = 1121234567
或者
XXXXXXXX = 21234567
在这种情况下它是一个电话号码,所以它需要以 2,3,4 或 5 开头
如果是手机,它有 9 位数字,必须以 9 开头,独占,第二位数字必须是 6,7 或 8:
0 + XX + 9XXXXXXXX = 011961234567
或者
XX + 9XXXXXXXX = 11971234567
或者
9XXXXXXXX = 981234567
因此,如果我得到字符串“011984160986”、“11984160986”或“984160986”,例如,我需要能够识别它是一部手机,电话号码也是如此。
同时我必须能够检查字符串“84160289”它不是一个有效的电话号码。
任何人都可以用正则表达式解决这个问题吗?
我不习惯在我的代码中使用大量“ifs”来验证这一点。
谢谢。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句