Java - 在扫描程序中使用多个分隔符

R.B*_*.B. 15 java delimiter java.util.scanner

我正在使用扫描仪来获取输入,并希望将其拆分为块.我希望它使用全字分隔符将其拆分.所以现在我有:

    Scanner scanner = new Scanner("1 imported bottle of perfume at 27.99");
    scanner.useDelimiter("\\sdelimitOne\\s");
Run Code Online (Sandbox Code Playgroud)

所以用输入"word word delimitOne word word delimitTwo word word"得到输出:

word word
word word delimitTwo word word
Run Code Online (Sandbox Code Playgroud)

我希望

    scanner.useDelimiter("\\sdelimitOne\\s\\sdelimitTwo\\s");
Run Code Online (Sandbox Code Playgroud)

可能会奏效,但不是.

我如何实现以下输出:

word word
word word
word word
Run Code Online (Sandbox Code Playgroud)

Ran*_*Lin 20

来自维基百科:

| :选择(也就是交替或设置联合)运算符匹配运算符之前的表达式或运算符之后的表达式.例如,abc | def匹配"abc"或"def".

所以,scanner.useDelimiter("\\sdelimitOne\\s|\\sdelimitTwo\\s");就是你需要的.