【发布时间】:2011-06-13 20:59:48
【问题描述】:
我正在尝试进行以下匹配,但它没有像我预期的那样返回 true:
String attrs = "id|fullname|email|title";
String regex = "fullname|email";
return attrs.matches(regex);
相反,它返回 false。
这是为什么?我期待 |管道中的 attrs 被逐字解释为 ASCII 字符,而 |正则表达式中的管道将根据正则表达式(即 OR)进行解释。
我问的原因是因为我正在编写一个应用程序,让用户以 attr1|attr2|attr3|... 格式设置属性,并且我想通过将其与可能的匹配来验证他/她的输入属性值:attr1|attr2|attr3|...|attr[n].
帮助赞赏,
公里
通过做得到它的工作
String regex = "id.*|fullname.*|email.*|title.*";
String attrs = "fullname|email";
return attrs.matches(regex);
【问题讨论】: