gpt4 book ai didi

用于调整空格的 Java 正则表达式

转载 作者:行者123 更新时间:2023-12-02 09:41:03 25 4
gpt4 key购买 nike

我知道这是这些问题的混合体:trim whitespace from a string?Regex or way to replace multiple space with single space .

我知道可以将这两种解决方案结合起来:

String mystring = "   brains    T1*   C+   ";
mystring = mystring.trim().replaceAll("[ ]+", " ");

输出:大脑 T1* C+

但是我的问题:

是否可以将 trim 部分制作为单个正则表达式?

mystring.replaceAll("#regex");

最佳答案

是的,您可以:

mystring = mystring.replaceAll("^\\s+|(?<=\\s)\\s+|\\s+$", "");

Demo on ideone.

该表达式背后的想法是分别匹配初始空格和尾随空格(通过使用 ^\\s+\\s+$ 表达式),并通过在前瞻中使用它来“屏蔽”一个空格以防止删除。这是最有趣的一 block :(?<=\\s)\\s+ - 它说“匹配一个或多个空格,当它们前面恰好有一个空格时”。 (?<=\\s)与我们想要保留的空间相匹配; \\s+匹配“不需要的”。

关于用于调整空格的 Java 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24313835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com