相关疑难解决方法(0)

从Java中删除字符串中的空格

我有一个像这样的字符串:

mysz = "name=john age=13 year=2001";
Run Code Online (Sandbox Code Playgroud)

我想删除字符串中的空格.我试过trim()但这只删除了整个字符串之前和之后的空格.我也尝试了replaceAll("\\W", "")但是=也被删除了.

如何通过以下方式实现字符串:

mysz2 = "name=johnage=13year=2001"
Run Code Online (Sandbox Code Playgroud)

java whitespace

653
推荐指数
13
解决办法
114万
查看次数

匹配换行符 - \n或\ r \n?

在写这个答案时,我必须完全匹配换行符而不是使用s-flag(dotall- dot匹配换行符).

通常用于测试正则表达式的站点在尝试匹配\n或时匹配时表现不同\r\n.

我注意到

  • Regex101仅匹配换行符\n
    (例如 - 删除\r并匹配)

  • RegExr匹配换行符既不\n 也不\r\n
    ,我无法找到的东西,使之匹配断行,除了m-flag和\s
    (例如)

  • Debuggex的行为更加不同:
    这个例子中它只匹配on \r\n,而
    在这里它只匹配on \n,同时指定相同的标志和引擎

我完全知道m-flag(多行 - ^匹配行的开头和$结尾),但有时这不是一个选项.同样\s,因为它匹配标签和空格.

我想使用unicode换行符(\u0085)不成功,所以:

  1. 是否有一种故障保护方法将匹配线路(最好不管使用的语言)整合到正则表达式中?
  2. 上述网站为什么不同的表现(尤其是Debuggex,一旦匹配只有\n一次只\r\n)?

regex language-agnostic line-breaks

128
推荐指数
3
解决办法
30万
查看次数

从java中的字符串修剪新行字符

以下程序的输出:

public class TestClass {

    public static void main(final String[] args){
        String token = "null\n";
        token.trim();
        System.out.println("*");
        System.out.println(token);
        System.out.println("*");
    }
}
Run Code Online (Sandbox Code Playgroud)

是:

*
null

*
Run Code Online (Sandbox Code Playgroud)

然而

如何从字符串的开头和结尾删除换行符(Java)?

否则说.

我错过了什么?

java string newline trim

4
推荐指数
2
解决办法
1万
查看次数