gpt4 book ai didi

java - 用java解析一个css文件

转载 作者:行者123 更新时间:2023-11-28 19:05:03 28 4
gpt4 key购买 nike

首先我想解释一下我在做什么,然后是我的问题。我需要扫描一个 css 文件并获取其所有内部链接(主要是图像),但我需要获取找到链接的行号。

现在我正在使用 flute 库解析文件并且它工作得很好我也使用 LineNumberReader 来获取找到链接的行号,但是此类抛出不正确的行号。

例如:链接 ../../image/bg.gif 位于第 350 行,但 LineNumberReader 类中的方法 getLineNumber 显示为 490。

因此,如果你们中的一些人能够以正确的方式引导我并给我一个可能的解释,为什么 LineNumberReader 类会这样做,我将不胜感激。

pd:另一种解决方案将不胜感激。

  • 抱歉可能出现错别字,英语不是我的母语。

最佳答案

另一种解决方案——看看这些解析器生成工具...

  1. Antlr - http://www.antlr.org/grammar/1240941192304/css21.g
  2. JavaCC - http://sourceforge.net/projects/cssparser/

JavaCC和Antlr提供了获取行号和列号的方法。

你的问题的可能原因......第一行......可能是因为解析器生成工具的工作方式......他们试图找出最好的匹配......因为他们有引用/倒回流....因此您的 LineNumberReader 实例不同步....

获取行号或列号的理想方法是使用工具本身提供的方法。

关于java - 用java解析一个css文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3859763/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com