Javascript regex在脚本标签之间获取src url

Javascript regex to get src url between script tag

本文关键字:获取 src url 之间 标签 regex 脚本 Javascript      更新时间:2023-09-26

我想从这样一个字符串中获得脚本的名称:

var text = '<script src="scripts/044c7c5e.vendor.js"></script><script src="scripts/fa9f85fb.scripts.js"></script>'

我想检索第二个脚本名称,即fa9f85fb.scripts。我如何使用javascript regex实现这一点?

我这样写:

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。