正则表达式将丢失的选择器添加到无效的CSS

用户名

我正在尝试像这样转换无效的CSS:

{color:red}

并使其有效,如下所示:

.missing_selector{color:red}

CSS示例:

a {
color:black;
background-color:blue;
}

{color:red}
<!-- TEST -->

@media screen and (max-width:620px) {
/* TEST 2 */
a.test {color:blue;}
p[class="test2"] {color:green;}
}

我当前的正则表达式:

/([^a-z0-9\)\];\-_]*\{)/i

现场测试:

http://www.phpliveregex.com/p/eMq

lix药

解决方案

您需要使用此:

/(?<=\A|\})(\s*)\{/m

用。。。来代替:

.missing-selector {

(?<=\A|\})确保具有唯一(除空白,)之前{是字符串或关闭的开始}(感谢Casimir et Hippolyte指出了那里的问题。)

这是一个regex101演示

为什么您的尝试失败

/([^a-z0-9\)\];\-_]*\{)/i

不按照你的想法做。

  • ( 开始一个捕获小组
  • [^a-z0-9\)\];\-_]需要的字符以外a-z0-9)];-,或_
  • * 零次或多次
  • \{ 需要 {
  • ) 结束捕获组

但是它没有一个^,因此它不与行的开头相关,也不会验证之前的任何内容{(应该仅是字符串,空格或a的开头})。结果,它将与)];-_示例CSS中具有一系列空格或其他非字母数字字符(不包括)的任何地方匹配

regex101演示的屏幕截图

有关更完整的解释和示例匹配,请参见此regex101演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

CSS @media查询(和其他嵌套选择器)的正则表达式解析

来自分类Dev

使用正则表达式将类属性添加到文件

来自分类Dev

将DOT(。)添加到正则表达式

来自分类Dev

Node.js-使用正则表达式将多个参数添加到路由

来自分类Dev

将撇号添加到正则表达式匹配中

来自分类Dev

如何将ASCII字符添加到正则表达式验证批注?

来自分类Dev

jQuery选择器中的正则表达式

来自分类Dev

将Dash添加到Java正则表达式

来自分类Dev

将多个正则表达式匹配项添加到列表列表中

来自分类Dev

使用正则表达式将报价添加到分隔列表

来自分类Dev

使用正则表达式将`.0`添加到不带小数的数字末尾

来自分类Dev

如何将+1添加到正则表达式捕获中?

来自分类Dev

将多个正则表达式匹配项添加到列表列表中

来自分类Dev

Javascript正则表达式将协议添加到url字符串

来自分类Dev

语法错误:无效的正则表达式:丢失/

来自分类Dev

.NET正则表达式将字符添加到非空白行的末尾

来自分类Dev

将DOT(。)添加到正则表达式

来自分类Dev

使用正则表达式将类的Abbr添加到xPath中

来自分类Dev

Node.js-使用正则表达式将多个参数添加到路由

来自分类Dev

将撇号添加到正则表达式匹配中

来自分类Dev

用于CSS数据属性选择器的正则表达式

来自分类Dev

使用正则表达式使用搜索/替换将新类添加到元素

来自分类Dev

用于将GET参数添加到URL的正则表达式

来自分类Dev

如何将空异常添加到正则表达式C#

来自分类Dev

将后缀添加到匹配的正则表达式不起作用

来自分类Dev

将 Guid 值添加到 IQueryable.Select() lambda 表达式选择器内的 Dictionary<string, object> 时发生转换错误:

来自分类Dev

在 Python 中使用正则表达式将单词添加到引号中

来自分类Dev

正则表达式将文件名添加到 html 文档中

来自分类Dev

Bash 将正则表达式值添加到数组

Related 相关文章

  1. 1

    CSS @media查询(和其他嵌套选择器)的正则表达式解析

  2. 2

    使用正则表达式将类属性添加到文件

  3. 3

    将DOT(。)添加到正则表达式

  4. 4

    Node.js-使用正则表达式将多个参数添加到路由

  5. 5

    将撇号添加到正则表达式匹配中

  6. 6

    如何将ASCII字符添加到正则表达式验证批注?

  7. 7

    jQuery选择器中的正则表达式

  8. 8

    将Dash添加到Java正则表达式

  9. 9

    将多个正则表达式匹配项添加到列表列表中

  10. 10

    使用正则表达式将报价添加到分隔列表

  11. 11

    使用正则表达式将`.0`添加到不带小数的数字末尾

  12. 12

    如何将+1添加到正则表达式捕获中?

  13. 13

    将多个正则表达式匹配项添加到列表列表中

  14. 14

    Javascript正则表达式将协议添加到url字符串

  15. 15

    语法错误:无效的正则表达式:丢失/

  16. 16

    .NET正则表达式将字符添加到非空白行的末尾

  17. 17

    将DOT(。)添加到正则表达式

  18. 18

    使用正则表达式将类的Abbr添加到xPath中

  19. 19

    Node.js-使用正则表达式将多个参数添加到路由

  20. 20

    将撇号添加到正则表达式匹配中

  21. 21

    用于CSS数据属性选择器的正则表达式

  22. 22

    使用正则表达式使用搜索/替换将新类添加到元素

  23. 23

    用于将GET参数添加到URL的正则表达式

  24. 24

    如何将空异常添加到正则表达式C#

  25. 25

    将后缀添加到匹配的正则表达式不起作用

  26. 26

    将 Guid 值添加到 IQueryable.Select() lambda 表达式选择器内的 Dictionary<string, object> 时发生转换错误:

  27. 27

    在 Python 中使用正则表达式将单词添加到引号中

  28. 28

    正则表达式将文件名添加到 html 文档中

  29. 29

    Bash 将正则表达式值添加到数组

热门标签

归档