我正在为某些模式解析InputStream以从中提取值,例如我会有类似的东西
我不想使用完整的html解析器,因为我对文档结构不感兴趣,而只是在一些定义明确的信息中. (只有他们的订单很重要)
目前我使用的是一种非常简单的方法,每个模式都有一个Object,其中包含一个打开和关闭’tag’的char [](在示例中,开头是< span class =“filename”>< a href =“和关闭”以获取网址)和位置标记.对于InputStream读取的每个字符,我迭代所有模式并调用匹配(char)函数,一旦开始模式匹配就返回true,从那时起我在StringBuilder中收集以下字符,直到现在活动模式匹配()再次.然后我调用一个具有Pattern和String读取ID的函数来进一步处理它.
虽然这在大多数情况下工作正常,但我想在模式中包含正则表达式,所以我也可以匹配类似的东西
在这一点上,我确信我会重新发明轮子,因为这肯定是以前完成的,而且我真的不想编写自己的正则表达式解析器.但是,我找不到任何可以做我想要的东西.
不幸的是,Scanner类只匹配一个模式,而不是模式列表,我可以使用哪些替代方案?它不应该很重,适用于Android.
最佳答案