说我有这个字符串:“(hello)(world)”

我将如何使用.useDelimiter()方法获取在单独的行中打印hello和world的输出?

我看到了许多定界符模式示例,它们似乎都在useDelimiter的参数中使用了奇怪的语法。

最佳答案

这种“古怪的语法”称为正则表达式,您可以在javadoc of the class Pattern中找到该语法。

默认分隔符为\p{javaWhitespace}+,表示一个或多个“ java空格”(请参见前面的javadoc)。

您也可以将其更改为[\p{javaWhitespace}()]+,因为您也有空格。

也不要忘记逃避\p

s.useDelimiter("[\\p{javaWhitespace}()]+");

09-11 20:48