Java 正则表达式学习笔记
·
一、正则表达式简介
在日常的开发工作中,我们总会遇到各种文本处理的需求:验证用户输入的邮箱是否合法、从一大段文本中提取出所有的手机号、替换字符串中的特定字符…… 面对这些需求,如果单纯依靠 字符串的基本方法逐个判断、截取,不仅代码冗长,而且容易出错。这时,正则表达式 能以简洁的语法描述复杂的文本规则,极大地提升文本处理的效率 。
二、正则表达式的主要类与方法
(一)类
1. Pattern 类:代表正则表达式的编译表示形式。将正则表达式字符串编译为`Pattern`对象。
2. Matcher 类:用于对输入的字符串做匹配操作。通过`Pattern`对象的`matcher`方法创建。
(二)方法
1. `find()`:查找输入字符串与正则表达式匹配的下一个子字符串。
2. `group()`:返回上一次匹配成功的子字符串。
3. `matches()`:判断整个输入字符串是否与正则表达式完全匹配。
三、正则表达式语法


四、使用正则表达式的操作实例
(一)验证电子邮箱地址

import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class zz {
public static void main(String[] args) {
String emailRegex = "^[A-Za-z0-9+_.-]+@[A-Za-z0-9.-]+$";
Pattern pattern = Pattern.compile(emailRegex);
String email = "test@example.com";
Matcher matcher = pattern.matcher(email);
if (matcher.matches()) {
System.out.println("Valid email address.");
} else {
System.out.println("Invalid email address.");
}
}
}
(二)提取电话号码

import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class zz2 {
public static void main(String[] args) {
String phoneNumberRegex = "\\d{11}";
Pattern pattern = Pattern.compile(phoneNumberRegex);
String text = "My phone number is 13812345678.";
Matcher matcher = pattern.matcher(text);
if (matcher.find()) {
System.out.println("Phone number: " + matcher.group());
}
}
}
更多推荐



所有评论(0)