Java扫描器类中的多个分隔符

Java扫描器类中的多个分隔符,java,delimiter,java.util.scanner,Java,Delimiter,Java.util.scanner,如何使用Scanner类的useDelimiter()方法将逗号(,)和新行字符(\n)同时用作分隔符 我正在分析csv文件中的一些文本。使用分隔符(“,| \\n”)怎么样 输出 hello world hello world useDelimiter采用正则表达式模式,因此,它类似于“,|\n”Jigar是绝对正确的。 但如果它不起作用,请尝试,|\\r“ 由于大多数文本文件都有\r\n而不仅仅是\n使用Excel文件的扫描分隔符,所以不要忽略正则表达式。 在我的例子中,exce

如何使用
Scanner
类的
useDelimiter()
方法将逗号(,)和新行字符(\n)同时用作分隔符


我正在分析csv文件中的一些文本。

使用分隔符(“,| \\n”)怎么样

输出

hello
 world 
 hello world

    • useDelimiter采用正则表达式模式,因此,它类似于
      “,|\n”
      Jigar是绝对正确的。 但如果它不起作用,请尝试
      ,|\\r“


      由于大多数文本文件都有\r\n而不仅仅是\n

      使用Excel文件的扫描分隔符,所以不要忽略正则表达式。 在我的例子中,excel文件由“|”分隔。
      我一直在花费大量时间使用scanner.useDelimiter(“|”)解析行,并逐字符返回。用scanner.useDelimiter(“\\\\”)替换它解决了我的问题

      我的文本文件包含如下条目:

      01-jan-2020,102
      02-jan-2020,103
      …
      
      要从每一行读取两个值,它使用以下命令,因为每一行尾都有
      \r
      \n
      字符:

      Scanner.useDelimiter(",|\\r\\n")
      

      它逃过了第二个\。正则表达式使用\n表示换行符,但Java也使用了换行符,因此您编写了\\n,并将其转换为正则表达式的\n。不知道为什么tomejuan没有响应。可能是“escapes”、“regex”或关于第二个“\”的解释。
      Scanner.useDelimiter(",|\\r\\n")