我设置扫描仪的分隔符,如:
scanner.useDelimiter("(\\s*?)(#.*?\n)(\\s*?)");
目标是忽略表格的评论
#comment \n
因此:
Hello#inline comment
world.
变为:
Hello
world.
通过像我一样设置分隔符,我想:
Hello#inline comment world.
会变成:
[Hello]
和
Hello#inline comment\n world.
会变成
[Hello, world.]
答案 0 :(得分:3)
我可能会弄错,但看起来你可能想要使用像
这样的东西scanner.useDelimiter("#.*(\r?\n|\r)?");
您需要记住,不是每一行都以\n
(或\r
或\r\n
)结尾,例如最后一行的末尾不能有\n
。石灰分离器在不同的操作系统中也可能不同。
编辑:
根据您的评论,您可能需要添加扫描仪标准分隔符(一个或多个空格 - \\s+
或\p{javaWhitespace}+
,如果您有效),请尝试使用
scanner.useDelimiter("\\s*#.*(\r?\n|\r)?|\\s+");