我打算在Java中使用REGEX来匹配字符串。例如我有字母'A' 'A' 'A' 'P' 'P' 'L' 'E' 'S'
。如何匹配字符串中的特定字符n-m次
我想检查一个字符串是否包含0-3 'A', 0-2 'P', 0-1 'L', 0-1 'E' and 0-1 'S'
。字符串的
例子,其应通过检查: APPLE, APPLES, ALE, PALE... etc
这是我已经试过:
if (str.matches("[A]{0,3}[P]{0,3}[L]{0,1}[E]{0,1}[S]{0,1}"))
APPLES通过检查顺利通过,但不SAPPLE。
你知道如何去除我的代码中的特定顺序吗?我可以使用循环的传统方式,但我认为它可能不是很有效,因为我有可能从字典中检索超过50,000个单词。 – user3437460 2014-09-20 01:55:21
除非你的代码在洗衣机上运行,否则5万字是花生。如果没有循环,你认为正则表达式是如何匹配的? – Thomas 2014-09-20 06:45:45