安徽网站建设科技,网站seo注意事项,wordpress进不去设置会乱码,手机建网站优帮云点击下方关注我#xff0c;然后右上角点击...“设为星标”#xff0c;就能第一时间收到更新推送啦~~~ 这篇文章通过解决实际项目开发中遇到的如何自动获取短信验证码的问题#xff0c;进一步讲述在Java中如何使用正则。 Java中如何使用正则 Java中正则相关类位于java.util.r… 点击下方关注我然后右上角点击...“设为星标”就能第一时间收到更新推送啦~~~ 这篇文章通过解决实际项目开发中遇到的如何自动获取短信验证码的问题进一步讲述在Java中如何使用正则。 Java中如何使用正则 Java中正则相关类位于java.util.regex包下主要使用2个类如下 Pattern类 Pattern是正则表达式regex的编译表示形式 Matcher类 通过解释Pattern对输入的字符串input执行匹配操作的引擎 注意在Java代码中转义字符“\”要写成“\\”才表示一个“\”。 比如regex\d在Java代码中应该写成“\\d”。 实际问题如何自动获取短信验证码 短信验证码在目前的互联网应用的非常广泛在一些重要操作中都需要输入短信验证码来验证身份信息。 列举3条不同的验证码短信内容如下 1、【膜拜单车】您的验证码是5072.请在页面中提交验证码完成验证。 2、【大众点评】876529大众点评网手机验证码请完成验证如非本人操作请忽略本短信。 3、【百度】349865动态验证码请在30分钟内填写。 那么如何通过一个正则表达式来获取到3个不同类型的短信内容里的数字验证码呢 首先分析以上3条短信内容找出共同点 1、验证码都是数字可以是4位数字也可以是6位数字 2、每条短信都包含“验证码”3个汉字 3、“验证码”3个字与数字的顺序关系“验证码”3个字可以在数字前也可以在数字后 有了上面的3个点我们就可以写在正则工具里写正则表达式进行验证了。 1、4位数字或者6位数字可以用“\d{4}|\d{6}”来匹配我们使用捕获组( )来获取数字部分即regex(\d{4}|\d{6}) 2、验证码3个字就用“验证码”来匹配regex验证码 3、“验证码”3个字在数字前可以regex验证码\D*(\d{4}|\d{6})“验证码”3个字在数字后可以regex(\d{4}|\d{6})\D*验证码这2个表达式是或的关系需要用到括号来组织这2个表达式然后再用或“|”来进行选择即regex(验证码\D*(\d{4}|\d{6}))|((\d{4}|\d{6})\D*验证码) 4、由于要通过捕获组( )来获取数字内容又要用括号来组织关系因此需要把或“|”两边的表达式部分用非捕获组(?:)来标记因为我们只需要获取数字部分的括号( )匹配到的数字。即regex(?:验证码\D*(\d{4}|\d{6}))|(?:(\d{4}|\d{6})\D*验证码) 如果这里看不懂的话请看《一篇文章学会正则表达式的语法》的相关内容。 最后我们把分析到的表达式代入到Java代码完成功能。注意在Java中反斜杠需要转义即一杠变二杠。 运行结果如下 如果想获取以上的源代码请在后台回复关键词“正则源码”获取。 推荐一个正则工具“RegexBuddy”在后台回复关键词“正则表达式”获取。