在Java中,使用正則表達式主要涉及到java.util.regex
包。以下是一些基本示例,說明如何使用正則表達式來匹配、查找和替換字符串。
import java.util.regex.Pattern;
import java.util.regex.Matcher;
String regex = "your_regex_pattern_here";
Pattern pattern = Pattern.compile(regex);
String input = "your_input_string_here";
Matcher matcher = pattern.matcher(input);
find()
方法查找匹配項:while (matcher.find()) {
System.out.println("Found match: " + matcher.group());
}
matches()
方法檢查整個字符串是否匹配:boolean isMatch = matcher.matches();
System.out.println("Is the entire string a match? " + isMatch);
replaceAll()
方法替換匹配項:String replacement = "your_replacement_string_here";
String result = matcher.replaceAll(replacement);
System.out.println("Replaced string: " + result);
split()
方法根據匹配項拆分字符串:String[] splitResult = pattern.split(input);
System.out.println("Split string: " + Arrays.toString(splitResult));
以下是一個完整的示例,演示了如何使用正則表達式驗證電子郵件地址:
import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class RegexExample {
public static void main(String[] args) {
String regex = "^[\\w!#$%&'*+/=?`{|}~^-]+(?:\\.[\\w!#$%&'*+/=?`{|}~^-]+)*@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,6}$";
Pattern pattern = Pattern.compile(regex);
String input = "example@example.com";
Matcher matcher = pattern.matcher(input);
if (matcher.matches()) {
System.out.println("Valid email address");
} else {
System.out.println("Invalid email address");
}
}
}
這個示例中,我們使用了一個正則表達式來驗證電子郵件地址的格式。如果輸入的字符串符合電子郵件地址的格式,程序將輸出"Valid email address",否則輸出"Invalid email address"。