为了账号安全,请及时绑定邮箱和手机立即绑定

提出适当的正则表达式的问题

提出适当的正则表达式的问题

喵喵时光机 2021-12-18 09:57:50
我需要在 if 语句中匹配类似于以下文本的文本。REG#John Smith#14102245862#7 johns road new york#John Anthony Smith该表达式旨在匹配REG字符串开头的关键字,然后是用户名,然后是由数字组成的帐号,对位数没有特定限制,然后是地址,最后是地址注册到的个人姓名。我想出的正则表达式不起作用。正则表达式如下:^REG\#\w\#[0-9]\#\w\#\w愿您帮助我向我展示我出错的地方以及如何使其发挥作用。先感谢您
查看完整描述

2 回答

?
暮色呼如

TA贡献1853条经验 获得超9个赞

问题是您不使用量词(*+),并且\w其中不包含空间代表[A-Za-z0-9_]。该字符#不需要转义(至少据我所知在 Java 中)。尝试以下正则表达式

^REG#[\w ]+#\d+#[\w ]+#[\w ]+
  • ^REGREG从字面上匹配字符串 ( )的开头

  • # 从字面上匹配 self

  • [\w ]+ 代表至少一个单词字符或空格

  • \d+ 代表至少一位数字

在 Java 中,不要忘记双重转义:

String regex = "^REG#[\\w ]+#\\d+#[\\w ]+#[\\w ]+";


查看完整回答
反对 回复 2021-12-18
?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

Try ^REG\#.*?\#[0-9]*?\#.*?\#.*,运算符*?表示重复直到下一个表达式切片,在这种情况下,\#


查看完整回答
反对 回复 2021-12-18
  • 2 回答
  • 0 关注
  • 255 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号