我需要一个聪明的正则表达式来匹配...这些:
<img src="..."
<img src='...'
<img src=...
Run Code Online (Sandbox Code Playgroud)
我希望匹配内部内容src,但仅当它被","或"无"包围时.这意味着<img src=..."或者<img src='...不能被接受.
任何想法如何将这3个案例与一个正则表达式相匹配.
到目前为止,我使用类似这样的东西("|'|[\s\S])(.*?)\1,我想要放松的部分是我[\S\s]用来匹配"缺失符号"的开头和结尾的hacky ....
Viv*_*ath 12
哇,我今天回答的第二个问题.
不要使用正则表达式解析HTML.使用HTML/XML解析器,您的生活将变得更加轻松.Tidy会为您清理HTML代码,因此您可以先通过Tidy运行HTML,然后再通过解析器运行HTML.除了santizing之外,一些基于整理的库将执行解析,因此您甚至可能不必通过另一个解析器运行它.
UPDATE
反对我更好的判断,我给你这个:
/<img\s+src\s*=\s*(["'][^"']+["']|[^>]+)>/
这仅适用于您的具体情况.即便如此,它也不会考虑转义"或'图像源名称或>角色.可能还有许多其他限制.捕获组为您提供了图像名称(如果名称被单引号或双引号括起来,它也会为您提供这些名称,但您可以将它们除去).
| 归档时间: |
|
| 查看次数: |
11691 次 |
| 最近记录: |