java 中使用 string.replaceall() 方法可以实现字符串的正则表达式匹配替换,通过正则表达式指定模式,使用替换字符替换匹配部分。例如,使用正则表达式 [0-9]+ 匹配字符串中的所有数字并用 * 替换。高级使用方法还支持捕获组引用,例如用 $1$1 将每个单词替换为其反转形式。replaceall() 方法返回一个新字符串,但不修改原字符串。
Java正则表达式匹配字符串替换方法
正则表达式(Regex)是一种模式匹配语言,它允许您在字符串中查找和替换特定模式。Java 中提供了 String.replaceAll(String regex, String replacement) 方法来实现字符串的正则表达式匹配替换。
如何使用 replaceAll() 方法
replaceAll() 方法接受两个参数:
立即学习“Java免费学习笔记(深入)”;
regex:要匹配的正则表达式。
replacement:替换匹配模式的新字符串。
示例
以下示例将字符串中的所有数字替换为 "":
String input = "This is a string with numbers 123.";
String output = input.replaceAll("[0-9]+", "");
System.out.println(output); // 输出:This is a string with numbers ***.登录后复制
正则表达式语法
正则表达式使用特殊字符来表示要匹配的模式。以下是一些常见的字符:
.:匹配任何字符。
[ ]:匹配方括号内指定的字符集合,例如 [0-9] 匹配所有数字。
^:匹配字符串的开头。
$:匹配字符串的结尾。
*:匹配前面的元素零次或多次。
+:匹配前面的元素一次或多次。
高级替换
replaceAll() 方法还支持使用 $ 占位符来引用匹配的模式:
$0:匹配的整个字符串。
$1:第一个捕获组匹配的字符串。
$2:第二个捕获组匹配的字符串,依此类推。
以下示例将句子中的每个单词都用其反转形式替换:
String input = "This is a sentence.";
String output = input.replaceAll("([a-zA-Z]+)", "$1$1");
System.out.println(output); // 输出:Thisishisasiasesentence.登录后复制
其他笔记
replaceAll() 方法返回一个新字符串,原字符串不会被修改。
正则表达式语法可能会因不同的编程语言或正则表达式库而异。
以上就是java正则表达式匹配字符串替换方法的详细内容,更多请关注php中文网其它相关文章!
91资源网站长-冰晨2024-08-27 17:15
发表在:【账号直充】爱奇艺黄金VIP会员『1个月』官方直充丨立即到账丨24小时全天秒单!不错不错,价格比官方便宜
91资源网站长-冰晨2024-08-27 16:15
发表在:2022零基础Java入门视频课程不错,学习一下