【发布时间】:2012-10-09 22:52:28
【问题描述】:
我有一个 HTML 文件,其中可能有 Javascript、PHP 以及人们可能会或可能不会放入他们的 HTML 文件中的所有这些东西。
我想从这个 html 文件中提取所有 cmets。
我可以指出这样做的两个问题:
一种语言的评论可能不是另一种语言的评论。
在 Javascript 中,使用
//标记将其余行注释掉。但是 URL 中也包含//,因此如果我删除部分 URL 只需申请替换//然后 该行的其余部分,没有任何内容。
所以这不是一个小问题。
是否有任何可用的解决方案?
有人已经这样做了吗?
【问题讨论】:
-
你说得对,这不是微不足道的。为了可靠地删除 cmets,您需要完全解析文件(PHP、HTML 和 Javascript)。如果可能,我建议使用 PHP;虽然我更喜欢 Perl,但 PHP 本身的工具比 Perl 的 PHP 工具要好。这里有一些东西可以帮助您入门:stackoverflow.com/questions/503871/…。然后你只需要在 PHP 中找到 HTML 和 javascript 解析器来对文件的这些部分做同样的事情。
-
为什么要在 HTML 文件中使用 PHP?我你只有 CSS、JavaScript 和 HTML,然后谷歌“HTML Minifier”寻找可以删除 cmets、空白和通常“缩小”你的页面的产品。
-
@RB,要解析的 html 可能在某些时候甚至不是我的。
-
你的第 2 点正是我总是在我的 cmets 中使用 /// 的原因——只是一个随机点,但我之前遇到过这个问题,它永远改变了我的评论习惯;)什么是你需要这种能力的原因是什么? “提取”是指保留 cmets 还是丢弃它们?
-
好吧,我打算丢弃它们,但不拘泥于对它们这样做将是一个更加模块化的解决方案。
标签: javascript html perl comments