我正在尝试将包含包含参数的HTML代码的字符串与Javascript中的函数进行匹配。
在包含HTML代码的字符串中有几个这样的函数。
changeImg('location','size');
假设我想抓住单引号内的位置,我该怎么做呢?字符串中有多个实例。
提前致谢。
答案 0 :(得分:3)
这是关于SO的一个相当常见的问题,答案总是一样的:正则表达式是解析HTML的糟糕工具。使用XML或HTML解析器。这就是他们的目的。请查看Parse HTML With PHP And DOM以获取示例,并Parsing Html The Cthulhu Way查看一些背景信息。
解析Javascript更加困难,因为它可以出现在<script>
标记和属性中,所以至少你需要得到每个<script>
标记并解析内容以及每个元素和解析他们的事件处理程序(onclick等)。
我想起了this quote:
“有些人在遇到一个人时 问题,想想“我知道,我会用 正则表达式。“现在他们有 两个问题。“ - Jamie Zawinski