【发布时间】:2012-05-12 22:24:03
【问题描述】:
我正在将一些代码从objective-c 移到java。该项目是一个 XML/HTML 解析器。在目标 c 中,我几乎只使用 scanUpToString("mystring");方法。
我查看了 Java Scanner 类,但它将所有内容都分解为标记。我不想要那个。我只想能够扫描最多出现的子字符串并跟踪扫描仪在整个字符串中的当前位置。
任何帮助将非常感谢!
编辑
更具体。我不希望 Scanner 进行标记化。
String test = "<title balh> blah <title> blah>";
Scanner feedScanner = new Scanner(test);
String title = "<title";
String a = feedScanner.next(title);
String b = feedScanner.next(title);
在上面的代码中,我想要 feedScanner.next(title);扫描到下一次出现 "<title" 的末尾
实际发生的情况是第一次调用 feeScanner.next 它可以工作,因为默认分隔符是空格,但是,第二次调用它会失败(出于我的目的)。
【问题讨论】:
-
您能否更具体地说明
Scanner不允许您做什么?从您所写的内容来看,即使Scanner也有点矫枉过正,您可以使用String#indexOf。
标签: java string string-parsing nsscanner