正则表达式

分类

  1. 普通字符
  2. 非打印字符
  3. 特殊字符
  4. 限定符

Java正则表达式

java.util.regex包主要包括以下三个类:

  • Pattern类
    pattern对象是一个正则表达式的编译表示。Pattern类没有公共构造方法。要创建一个Pattern对象,必须先调用其公共静态编译方法,它返回一个Pattern对象。该方法接受一个正则表达式作为它的第一个参数。

  • Matcher类:
    Matcher对象事对输入字符串进行解释和匹配操作的引擎。和Pattern类一样,Matcher类也米有公共构造方法,需要调用Pattern对象的matcher方法来获得一个Matcher对象。

  • PatternSyntaxException:
    PatternSyntaxException:是一个非强制的异常类,它表示一个正则表达式模式中的语法错误。

实例

下面的例子说明如何从一个给定的字符串中找到数字串:

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegexMatches
{
    public static void main( String args[] ){

      // 按指定模式在字符串查找
      String line = "This order was placed for QT3000! OK?";
      String pattern = "(.*)(\\d+)(.*)";

      // 创建 Pattern 对象
      Pattern r = Pattern.compile(pattern);

      // 现在创建 matcher 对象
      Matcher m = r.matcher(line);
      if (m.find( )) {
         System.out.println("Found value: " + m.group(0) );
         System.out.println("Found value: " + m.group(1) );
         System.out.println("Found value: " + m.group(2) );
      } else {
         System.out.println("NO MATCH");
      }
   }
}

以上实例编译运行结果如下:

Found value: This order was placed for QT3000! OK?
Found value: This order was placed for QT300
Found value: 0

你可能感兴趣的:(正则表达式)