Java中的正则表达式

xiaoxiao2021-02-28  46

正则表达式:

实质上是一个模式,用于描述共享该模式的一组字符串

正则表达式语法:

字符     x            x字符     \\            反斜线字符     \t             制表符     \n            换行符     \r            回车符           字符类:     [abc]        a、b 或 c(简单类)     [^abc]         任何字符,除了 a、b 或 c(否定)     [a-zA-Z]     a 到 z 或 A 到 Z,两头的字母包括在内(范围)      预定义字符类:     . 任何字符                 如果本身就是.             \d                 数字:[0-9]                          \w                 单词字符:[a-zA-Z_0-9]:字母大小写,数字字符                         边界匹配器:     ^                 行的开头     $                  行的结尾     \b                 单词边界 尾 (helloword?haha:world) Greedy 数量词(重点)     X?                 X,一次或一次也没有     X*                 X,零次或多次     X+                 X,一次或多次     X{n}            X字符恰好出现n次     X{n,}            X字符至少出现n次     X{n,m}            X字符至少出现n次,但不超过m次

程序示例:

public static void main(String[] args) { Scanner sc = new Scanner(System.in) ; System.out.println("请输入一个QQ号码:"); String QQ =sc.nextLine() ; boolean flag = checkQQ(QQ) ; //调用正则表达式 System.out.println(flag); } public static boolean checkQQ(String qq) { return qq.matches("[1-9]\\d{4,14}") ; //字符串方法boolean matches(String regex) 告知此字符串是否匹配给定的正则表达式。 }

Pattern类

作用在于编译正则表达式后创建一个匹配模式.

String regex = "\\?|\\*"; Pattern pattern = Pattern.compile(regex); String patternStr = pattern.pattern();//返回\?\*

Matcher类

使用Pattern实例提供的模式信息对正则表达式进行匹配

Pattern pattern = Pattern.compile("\\?{2}"); Matcher matcher = pattern.matcher("??"); // Matcher matcher(String input) :模式对象转换成匹配器对象 boolean matches = matcher.matches();

Pattern中的两个常用方法

String[] split(CharSequence input)           围绕此模式的匹配拆分给定输入序列。 String[] split(CharSequence input, int limit) 增加参数limit目的在于要指定分割的段数          围绕此模式的匹配拆分给定输入序列。

转载请注明原文地址: https://www.6miu.com/read-2621191.html

最新回复(0)