我设置了一个扫描仪,它正在使用InputStream工作。
我使用Scanner.nextLine()方法来获取每一行,然后对每一行进行一些正则表达式处理。
我有一个正则表达式,基本上像是[\w\p{Z}]+?[;\n\r]
,可以捕获到该行末尾的任何内容,或者只捕获一个东西,如果它们以分号分隔。
所以,如果我的InputStream看起来像
abcd;
xyz
它将选择abcd;,但不会选择xyz。
我认为这是因为扫描器在调用.nextLine()函数时消耗了文本行末尾的换行符。有人能告诉我如何解决这个问题吗?
另外,对于我的正则表达式,我正在使用Pattern.DOTALL编译该模式。
谢谢!
String.split
也可以实现? - Marnix