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

2022-09-03 13:46:10

我正在使用扫描仪来获取输入,并希望将其分成块。我希望它使用整个单词分隔符将其拆分。所以现在我有:

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

因此,通过输入“单词单词 delimit一个单词 delimit两个单词”,我得到输出:

word word
word word delimitTwo word word

我希望

    scanner.useDelimiter("\\sdelimitOne\\s\\sdelimitTwo\\s");

可能有效,但唉,不是。

如何实现以下输出:

word word
word word
word word

?


答案 1

来自维基百科 :

|:选择(也称为交替或集合并集)运算符与运算符之前的表达式或运算符之后的表达式匹配。例如,abc|def 匹配“abc”或“def”。

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


答案 2

推荐