正则表达式以匹配基本媒体查询

时间:2019-07-13 01:45:25

标签: javascript regex

我正在努力获取正则表达式以匹配以下字符串:

(max-width: 320px) 280px

我希望我的正则表达式将字符串分成两部分,如下所示:

console.log(parts[0]) // (max-width: 320px)
console.log(parts[1]) // 280px

这是我目前拥有的:

(\(.+\))\s?(0-9a-z)+

我有一段时间没有写正则表达式了,所以有点生疏了,但是由于某种原因,我无法使其与最后一部分(即280px)匹配。

有人可以告诉我我在做什么错吗?

其他信息

我不需要任何复杂的操作,此正则表达式的目的是匹配sizes元素的img属性中使用的媒体查询。

据我所知,它只需要执行以下操作:

  1. 匹配方括号内的所有内容(包括方括号)
  2. 匹配可选空格
  3. 匹配结尾的字母数字值(可以是px / em / vw)

1 个答案:

答案 0 :(得分:1)

我的猜测是您的表达很好,也许我们只需向其中添加一个char类:

(\(.+\))\s*([0-9a-z]+)

如果要探索/简化/修改表达式,请在this demo右上角进行解释。