仅替换字符串中的某些空格

Und*_*nce 0 java whitespace split

我有queryInputNameString一个等于的字符串,fir, spotted owl我试图用来replaceAll()删除空格并split()inputNameArray逗号出现时分隔数组中的元素.

String noSpaces = queryInputNameString.replaceAll("\\s+","");
String[] inputNameArray = noSpaces.split("\\,");
Run Code Online (Sandbox Code Playgroud)

到目前为止,上述回报:

fir
spottedowl
Run Code Online (Sandbox Code Playgroud)

但我希望它只删除逗号之前或之后发生的空格并返回:

fir
spotted owl
Run Code Online (Sandbox Code Playgroud)

如何让我的代码忽略前面/后面没有逗号的空格?

谢谢.

Gui*_*sel 5

由于split()接受正则表达式作为参数,您可以直接执行此操作:

String[] inputNameArray = queryInputNameString.split("\\s*\\,\\s*");
Run Code Online (Sandbox Code Playgroud)

否则,如果你真的想在逗号之后只替换空格,你可以使用:

String noSpaces = queryInputNameString.replaceAll(",\\s+",",");
Run Code Online (Sandbox Code Playgroud)