【发布时间】:2014-09-12 15:12:56
【问题描述】:
我尝试使用 Java 中的正则表达式来确定字符串是否包含不在集合中的任何字符。
我有以下一组有效字符“@ADEFIKRVXY156”。空白字符可以忽略,可以认为是有效的。
输入将是一个由一系列字母数字字符或空格组成的字符串。如果输入的字符串包含不在我的有效集合中的任何字符,我想编写的正则表达式将使 Java 的 Pattern.matcher(String) 返回 true。如果字符串有一些有效字符和一些无效字符,则应将整个字符串评估为无效。唯一有效的情况是整个字符串仅包含有效集中的字符。现在必须根据有效字符集对字符串中的每个字符进行评估,而不是字符串匹配或模式匹配。
有效的示例输入(Java Pattern.matcher 应该返回 false): “@”、“F”、“F I”、“R I”
无效的示例输入(Java Pattern.matcher 应该返回 true): “4 I”、“FT”、“4 B”
感谢您的帮助
【问题讨论】:
-
这是一个非常可爱的工具来测试你的正则表达式:regexr.com
标签: java regex string pattern-matching