Java 正则表达式          返回主页

正则表达式定义了字符串的模式。
正则表达式可以用来搜索、编辑或处理文本。
正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。
Java正则表达式和Perl的是最为相似的。

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 RegexTest {

    private static final String REGEX1 =
                 "[a-zA-Z]+";   //纯字母
    private static final String REGEX2 =
                 "[!@#$%^&*()_+.,.?/]+";  //特殊符号
    private static final String REGEX3 =
                 "[0-9]*";  //纯数字
    private static final String REGEX4 =
                 "[a-zA-Z!@#$%^&*()_+.,.?/0-9]{6,12}";//字串长度
    private static final String INPUT =
                                    "1234567890001";

    public static void main( String args[] ){
       Pattern pattern = Pattern.compile(REGEX4);
       Matcher matcher = pattern.matcher(INPUT); // 获取 matcher 对象

       if (matcher.matches()) {
           System.out.println("匹配成功");
       } else {
           System.out.println("匹配失败");
       }

   }
}