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正则表达式匹配字符串替换方法的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3045265.html