当前位置: 首页 > 知识库问答 >
问题:

如何使用RegEx[关闭]删除重复的序列号

岳君之
2023-03-14

想改进这个问题吗 通过编辑此帖子,更新问题,使其只关注一个问题。

我需要删除此电话号码中重复的号码序列,并使用正则表达式稍微更改格式

这就是我拥有的(83)9 9954-0720/(83)9 9954-0725/(83)3531-442

我需要做的是(83)9 9954-0720/0725,(83)3531-442

如果有人能帮我我会很感激的

共有1个答案

梁丘佑运
2023-03-14

我认为正则表达式不是解决你问题的正确方法。使用string的split()方法在每个斜杠处拆分字符串可能更容易,将生成的数组转换为列表,然后在迭代时删除重复项。

ArrayList<String> values = new ArrayList<>(Arrays.asList(phoneNumbers.split("/")));
    values.sort(String::compareTo);
    String last = "";
    for (Iterator<String> iterator = values.iterator();iterator.hasNext();)
    {
        String current = iterator.next();
        if (current.equals(last))
        {
            iterator.remove();
        }
        last = current;
    }
    phoneNumbers = String.join("/", values);

或者,您可以使用流来实现相同的目标(自Java 8以来)

Stream.of(phoneNumbers.split("/")).distinct().collect(Collectors.joining("/"))
 类似资料:
  • 我正在尝试删除代码的以下部分: 我尝试了以下方法: 但是我收到一个错误: 解析不够。正则表达式 如何使用regex删除上面的代码块? 它从这个url为regex返回的以下代码http://creepypasta.wikia.com/wiki/She_Was_Asking_for_It

  • 我构建了一个使用BingAPI下载数据集的代码。当我在终端上运行它时,它返回以下错误: 所以我升级了Numpy,但没有用 那么我该怎么做呢?

  • 我想删除我的DataFrame中的第一列,我在网上找到了答案。答案是删除列1、2和4。我想知道为什么这行代码可以删除列,轴在这里的作用是什么?

  • 对于包含10列的数据框,如何删除索引2以上的列。数据框如下所示: 任务是删除列3-列10

  • 实际上,我知道如何减少重复的,或者将分配给,但我有一个不同的问题。如何在Java8中使用stream或者可能是来解决以下智能方式的问题? 假设列表中有一个对象

  • 想改进这个问题吗?通过编辑这篇文章添加细节并澄清问题。 我有一个大的html内容。因此,我必须从HTML内容中删除以下文本。 在上面提到的代码段中,“{内部文本可以是任何内容}”表示可以是任何文本。 在整个HTML中,无论 存在,它将被一些固定的文本替换。 谁能建议这个需求的正则表达式是什么?