如何将扫描仪的定界符设置为;或换行?
我试过了:
Scanner.useDelimiter(Pattern.compile("(\n)|;"));
但这是行不通的。
最佳答案
通常,在模式中,您需要将\
加倍。
所以,尝试
Scanner.useDelimiter(Pattern.compile("(\\n)|;"));`
或者
Scanner.useDelimiter(Pattern.compile("[\\n;]"));`
编辑:如果
\r\n
是问题,则可能需要尝试以下操作:Scanner.useDelimiter(Pattern.compile("[\\r\\n;]+"));
与
\r
,\n
和;
中的一个或多个匹配。注意:我还没有尝试过这些。
关于Java扫描仪问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1981497/