Java 在一个空格处使用正则表达式拆分字符串

Java 在一个空格处使用正则表达式拆分字符串,java,regex,Java,Regex,我尝试使用空格分割字符串,但仅当有一个空格时 例如,我有以下几点 String s = "THIS IS A TEST"; 我想拿这个结果,是一个测试。如何形成正则表达式来完成这项工作?使用lookarounds: (?<!\s)(\s)(?!\s) 此正则表达式匹配没有后跟空格和前面没有空格的空格 在Java中,它将显示: "THIS IS A TEST".split("(?<!\\s)(\\s)(?!\\s)"); 说明: 正则表达式?匹配前面没有a的b RegexB?

我尝试使用空格分割字符串,但仅当有一个空格时

例如,我有以下几点

String s = "THIS IS A  TEST";
我想拿这个结果,是一个测试。如何形成正则表达式来完成这项工作?

使用lookarounds:

(?<!\s)(\s)(?!\s)
此正则表达式匹配没有后跟空格和前面没有空格的空格

在Java中,它将显示:

"THIS IS A  TEST".split("(?<!\\s)(\\s)(?!\\s)");
说明:

正则表达式?匹配前面没有a的b RegexB?!a匹配b,后面不跟a 进一步阅读:

使用lookarounds:

(?<!\s)(\s)(?!\s)
此正则表达式匹配没有后跟空格和前面没有空格的空格

在Java中,它将显示:

"THIS IS A  TEST".split("(?<!\\s)(\\s)(?!\\s)");
说明:

正则表达式?匹配前面没有a的b RegexB?!a匹配b,后面不跟a 进一步阅读:


由于split的参数是一个正则表达式,因此可以查找一个或多个空格+而不是一个空格

字符串[]数组=s.split+

还可以添加和参数,以限制要将字符串拆分为的滑动数

字符串[]数组=s.split+,N


其中N是要将字符串分割成的分割数。

由于要分割的参数是正则表达式,因此可以查找一个或多个空格+而不仅仅是一个空格

字符串[]数组=s.split+

还可以添加和参数,以限制要将字符串拆分为的滑动数

字符串[]数组=s.split+,N


其中N是要将字符串分割成的分割数。

您可以尝试使用单词边界的正则表达式

string.split("\\b\\s\\b");

你可以试试这个使用单词边界的正则表达式

string.split("\\b\\s\\b");