Java如何编写简单的字符类正则表达式?
正则表达式上下文中的字符类是一组用方括号括起来的字符"[]"。它指定将成功匹配给定输入中的单个字符的字符。
简单类是字符类的最基本形式,只需将一组字符并排放在方括号内即可形成。例如,正则表达式b[ai]t将匹配单词,"bit"或者"bat"因为该模式定义了一个接受"i"或"a"作为中间字符的字符类。
package org.nhooo.example.regex; import java.util.regex.Matcher; import java.util.regex.Pattern; public class CharacterClassesSimpleClassDemo { public static void main(String[] args) { //创建字符类的简单类类型。 //以下正则表达式将搜索所有序列 //以“b”开头,以“t”结尾并具有 //中间字母“a”或“i”。 String regex = "b[ai]t"; //编译模式并获得匹配对象。 Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher("I'm a little bit afraid of bats " + "but not cats."); //找到所有匹配项并打印出来。 while (matcher.find()) { System.out.format("Text \"%s\" found at %d to %d.%n", matcher.group(), matcher.start(), matcher.end()); } } }
该程序将打印以下输出:
Text "bit" found at 13 to 16. Text "bat" found at 27 to 30.