【问题标题】:Remove Character Occurrences Until the First Different One, Java删除字符出现直到第一个不同的字符出现,Java
【发布时间】:2022-01-11 20:27:45
【问题描述】:

所以我有一些数字字符串,如下所示:

“00000545468”-“00002021”-“000000001990”等。(我不知道这些字符串将如何传递给我,我唯一知道的是它们将从左边的一些零开始,然后在那里将是其他不同的数字)

我想删除所有出现的零 (0) 从左侧 直到字符串的第一个不同数字。 因此,如果我有例如“00002021”,我想要结果是“2021”,如果我有“000000001990”,我想要“1990”。

我排除了 .replace("0", "") 的使用,因为这样做我也会删除“2021”和“1990”中的零,而我不这样做不希望发生这种情况。

有什么建议吗?

【问题讨论】:

    标签: java string methods


    【解决方案1】:

    您可以使用replaceFirstreplaceAll,但重点是锚定您的正则表达式,因此它只会替换位于字符串开头的零。

    "00002021".replaceFirst("^0+", "")
    

    应该返回你需要的,如果它们不在字符串的开头,则不替换零。

    你可以在https://www.regexplanet.com/advanced/java/index.html查看这个(免责声明:我不拥有这个网站,我不会通过链接到它来获利)。

    【讨论】:

    • 非常感谢,这很好:)
    猜你喜欢
    • 2021-06-11
    • 1970-01-01
    • 2021-06-07
    • 1970-01-01
    • 2021-10-31
    • 2021-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多