查找仅包含给定字符的单词:RegEx

时间:2011-10-22 20:25:52

标签: java regex

我有一套话。例如,

abc, adb, acb, cab, abcc, abk, bacc

我想找到只有

的单词
  

ABC

所以,我需要的结果是

abc, acb, cab, abcc, bacc

我需要使用正则表达式找到它。
任何人都可以帮助我。

3 个答案:

答案 0 :(得分:4)

下面的正则表达式只能找到你所有的单词,其中包含abc字符。

    Pattern regex = Pattern.compile("\\b[abc]+\\b");
    Matcher regexMatcher = regex.matcher(subjectString);
    while (regexMatcher.find()) {
        // matched text: regexMatcher.group()
        // match start: regexMatcher.start()
        // match end: regexMatcher.end()
    } 

答案 1 :(得分:3)

不用担心一个简单的例子

[a-c] +

将匹配来自a-c

的一个或多个字母的任意组合

[AFZ] +

对a,f,z也会这样做

除了考虑案例之外,你还想考虑构成“单词”的构造(以空格或其他形式开头和成功)?

答案 2 :(得分:0)

\\b[abc]+\\b

\\b[a-c]+\\b

[]表示character set+表示集合中任意字符的1个或多个repetitions\bword boundary,因此您只会匹配完整的字词。

Example.