[英]Javascript regex to get src url between script tag
我想从这样的字符串中获取脚本的名称:
var text = '<script src="scripts/044c7c5e.vendor.js"></script><script src="scripts/fa9f85fb.scripts.js"></script>'
我想检索第二个脚本名称,即fa9f85fb.scripts 。 如何使用javascript正则表达式实现这一目标?
我写的是这样的:
text.match(new RegExp(/<script src="scripts\/[(.*?)]\.scripts\.js"><\/script>/), 'g')[0]
但它返回整个字符串。
你的模式有点偏; [(.*?)]
应该简单地改为(.*?)
:
/<script src="scripts\/(.*?)\.scripts\.js"><\/script>/g
将是整个正则表达式,无需调用RegExp
类构造函数。 匹配的字符串存储在索引0
。 然后从索引1
开始存储各个段。
text.match( /<script src="scripts\/(.*?)\.scripts\.js"><\/script>/g )[1]
试试/\\w+.scripts(?=.js)/
?
参考: https : //developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions
你的比赛模式有点模糊。 我可以简单地使用/fa9f85fb.scripts/来匹配它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.