我想正则表达css的完整路径,例如我有这个:
<link rel="stylesheet" href="../assets/myCssFile.css"/>
我想要正则表达式:/assets/myCssFile.css
我尝试的是:/(?:href)=("|').*?([\w.]+\.(?:css))\1/gi
但这会让我回答:href="../assets/myCssFile.css"
有人可以用正则表达式帮我解决。
顺便说一句:这是一个ajax请求的响应文本,它返回一个html页面的字符串
答案 0 :(得分:2)
href=\"(.*\.css)"
这将在捕获组中返回"../assets/myCssFile.css"
。
https://regex101.com/r/a44Axz/1
它所做的只是说:
我只对引号内的文字感兴趣,这些文字紧跟在&#34; href&#34;并且只有它是&#34; .css&#34;文件。
答案 1 :(得分:0)
晚了,但也许它会帮助某人。 :)
另一个匹配 css 路径的正则表达式:
href[ \t]{0,}=[ \t]{0,}"(.{1,}\.css)"
这也匹配 href
和 =
之间存在制表符或空格或 =
和 css 文件名之间的情况。
此外,如果您想在一个正则表达式中匹配 css 和 javascript 文件名,您可以使用以下内容:
href[ \t]{0,}=[ \t]{0,}"(.{1,}\.css)"|src[ \t]{0,}=[ \t]{0,}"(.{1,}\.js)"
它们由或运算符 |
组合。