Java入门第88课——使用replaceAll实现字符串替换

Dear 丶 2023-06-07 12:15 118阅读 0赞

问题

使用replaceAll实现字符串替换,具体要求为将字符串”abc123bcd45ef6g7890”中的数字替换为汉字”数字”,如果是连续的数字,那么替换为一个汉字”数字”。

方案

在Java API中的String提供了replaceAll方法,实现将字符串中匹配正则表达式的字符串替换成其它字符串,replaceAll方法的声明如下所示:

  1. String replaceAll(String regex,String replacement)

以上方法实现将字符串中匹配正则表达式regex的字符串替换成replacement。

步骤

实现此案例需要按照如下步骤进行。

步骤一:添加测试方法

在TestRegEx中添加测试方法testReplaceAll,代码如下所示:

  1. package day02;
  2. import org.junit.Test;
  3. import java.util.Arrays;
  4. public class TestRegEx{
  5. /**
  6. *使用replaceAll方法实现字符串替换
  7. *
  8. */
  9. @Test
  10. public void testReplaceAll(){
  11. }
  12. }

步骤二:使用replaceAll方法

将字符串”abc123bcd45ef6g7890”中的数字替换为汉字”数字”,如果是连续的数字,那么替换为一个汉字”数字”,在正则表达式中,使用”[\\d+]“来表示可以出现一个或多个数字,代码如下所示:

  1. package day02;
  2. import org.junit.Test;
  3. import java.util.Arrays;
  4. public class TestRegEx{
  5. /**
  6. *使用replaceAll方法实现字符串替换
  7. *
  8. */
  9. @Test
  10. public void testReplaceAll(){
  11. //将str中的所有数字替换为"数字"二字
  12. String str="abc123bcd45ef6g7890";
  13. str=str.replaceAll("\\d+","数字");
  14. System.out.println(str);
  15. }
  16. }

步骤三:运行

运行方法testReplaceAll,控制台输出结果如下:

  1. abc数字bcd数字ef数字g数字

从输出结果可以看出已经将字符串”abc123bcd45ef6g7890”中的数字替换为汉字”数字”。

关注公众号,获取学习视频

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2hvdWp1bmthbmczNjM_size_16_color_FFFFFF_t_70

发表评论

表情:
评论列表 (有 0 条评论,118人围观)

还没有评论,来说两句吧...

相关阅读