基本上我的问题是这样的,我需要解析文本,其中 ,
是分隔符,但 ""
引号中的任何内容都不应该检查分隔符。这就是 Scanner.skip
方法的用途吗?我会自己检查一下,但我不明白如何在 java 中编写正则表达式模式,其中 token 位于两个 ""
之间。我还想在正确的标记中包含任何引用的文本,该标记由有效的 ,
分隔。
最佳答案
我不久前研究过这个问题,但没有找到足够快的解决方案。
因此,我将一个简单的自定义字符串拆分器(忽略引号之间的分隔符)合并到我从事的开源项目中:
例如:
public static void main( String[] args ) throws IOException
{
String s = "ads,asdas,das,das, \"ahda,asd,as,d,a\", adsa";
String[] tokens = QuoteAwareStringSplitter.splitLine( s );
for ( String token : tokens )
{
System.out.println( token );
}
}
打印:
ads
asdas
das
das
ahda,asd,as,d,a
adsa
关于java - 让扫描仪包含但忽略引用的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10163986/