概念
正则表达式是一种强大而灵活的文本处理工具,使用正则表达式,我们能够以编程的方式,构造复杂的文本模式
基础
-? 表示最前面可能有一个负号
\\d 表示一位数字 \\d+表示一位或多位数字
-?\\d+ 可能有一个负号,后面跟着一位或多位数字
实例:
public class Test {
public static void main(String[] args) {
System.out.println("-1234".matches("-?\\d+"));
System.out.println("1234".matches("-?\\d+"));
System.out.println("+991".matches("-?\\d+"));
System.out.println("+991".matches("(-|\\+)?\\d+"));
}
}
运行结果:true true false true
(-|\\+)? 可能有一个负号或者一个正号
| 表示或
+ 在正则表达式中有特殊意义,所以必须使用\\将其转义,使其成为表达式中的普通字符
String类还自带了一个非常有用的正则表达式——split()方法,其功能是:接收一个正则表达式作为参数,将字符串从正则表达式匹配的地方切开,返回一个字符串list
String类自带的最后一个正则表达式工具是“替换”——replaceFirst(),replaceAll()
接收两个参数:正则表达式,被替换的字符串
实例:
public class Test {
static String s = "Nobody knows who I really am, Nobody knows who you really am";
public static void main(String[] args) {
System.out.println(s.replaceFirst("N\\w+", "Everybody"));
System.out.println(s.replaceAll("N\\w+", "Everybody"));
}
}
运行结果:
Everybody knows who I really am, Nobody knows who you really am
Everybody knows who I really am, Everybody knows who you really am
\w+ 表示一个或多个单词字符
\W+ 表示一个或多个非单词字符
创建正则表达式