javascript - 获取 url("") 中的值
问题描述
我正在尝试使用以下正则表达式:
[^url("](.*(?:jpg|jpeg|png|gif))
但我只需要value
里面url("
")
例子:
- 从:
url("34eb1bd00e8e0e4f59a33f654edc483a.jpg")
- 提炼:
34eb1bd00e8e0e4f59a33f654edc483a.jpg
解决方案
尝试这个:
const str = 'background: #fbfbfb url("34eb1bd00e8e0e4f59a33f654edc483a.jpg");';
const regex = /^.*?url\(['"]?([^'"\)]*)['"]?\).*$/;
let result = str.replace(regex, '$1');
console.log(result);
输出:
34eb1bd00e8e0e4f59a33f654edc483a.jpg
解释:
^
- 在开始时锚定.*?
- 非贪婪扫描url\(
- 字面意思url(
['"]?
- 可选引号([^'"\)]*)
- 捕获包含所有内容的组,直至报价或)
['"]?
- 可选引号\)
- 字面意思)
.*$
- 全部匹配到字符串结尾
推荐阅读
- java - 如何创建一个 Java 肥皂服务,它使用不同的肥皂服务作为客户端并返回原始 xml 响应
- html - 图像 srcset 定义未按预期工作
- regex - ansible extrct uid form ldap_search 并用于制作 ldap 过滤器
- sql - 如何在 ssms 中通过 select 插入值?我得到了我尝试过的错误
- qt - 如何将 QAction 设置为在 QToolBar 内具有透明背景
- html - 如果没有空格,移动到下一行
- r - R连接数据表/使用另一张表填充一张表:错误因子级别和双列
- android - 使用数据绑定时,如何将 Activity 的 30 个 EditTexts 的资源 ID 添加到 ArrayList?
- javascript - 为什么猫鼬会改变变量
- amazon-web-services - 用于检查 JSON 密钥的 CloudWatch 指标筛选器是否存在