为了账号安全,请及时绑定邮箱和手机立即绑定

Java 正则表达式从字符串中删除匹配项

Java 正则表达式从字符串中删除匹配项

慕少森 2023-03-17 16:38:38
我想弄清楚如何从我的字符串中删除找到的匹配项。所以我的代码示例目前看起来像这样:public void checkText() {    String helper = "985, 913, 123, SomeotherText, MoreText, MoreText";    Pattern pattern = Pattern.compile("\\b\\d{3}");    Matcher matcher = pattern.matcher(helper);    while (matcher.find()) {        String newtext = "Number: " + matcher.group() + "\n"+ newtext;        helper.replaceAll(matcher.group(),"");    }    newtext = newtext + "________________\n"+ helper;    editText.setText(newtext);}所以我的输入字符串是:985, 913, 123, SomeotherText, MoreText, MoreText运行代码后我想看到的是:Number: 985Number: 913Number: 123________________________SomeotherText, MoreText, MoreText谁能告诉我我当前的代码有什么问题?
查看完整描述

2 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

您可以在代码中更新一些内容:

  • 您应该将更换的退货设置为helper

  • 如果您只替换为空字符串,则您的字符串将, , ,在替换中以逗号和后续空格开头

  • 您可以初始化变量String newtext = "";

查看Java 演示

您的代码可能如下所示:

String helper = "985, 913, 123, SomeotherText, MoreText, MoreText";

Pattern pattern = Pattern.compile("\\b\\d{3}");

Matcher matcher = pattern.matcher(helper);

String newtext = "";


while (matcher.find()) {

    newtext = "Number: " + matcher.group() + "\n"+ newtext;

    helper = helper.replaceAll(matcher.group() + ", ","");

}

newtext = newtext + "________________\n"+ helper;

System.out.println(newtext);

结果:


Number: 123

Number: 913

Number: 985

________________

SomeotherText, MoreText, MoreText


查看完整回答
反对 回复 2023-03-17
?
慕的地10843

TA贡献1785条经验 获得超8个赞

由于您已经在使用该类,因此Matcher您还可以使用该方法Matcher.appendReplacement进行替换:


public void checkText() {

    String helper = "985, 913, 123, SomeotherText, MoreText, MoreText";

    Pattern pattern = Pattern.compile("\\b\\d{3}, ");

    Matcher matcher = pattern.matcher(helper);

    StringBuffer sb = new StringBuffer();

    while (matcher.find()) {

        System.out.println("Number:"+matcher.group());

        matcher.appendReplacement(sb, "");

    }

    matcher.appendTail(sb);

    System.out.println(sb.toString());

}


查看完整回答
反对 回复 2023-03-17
  • 2 回答
  • 0 关注
  • 146 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信