css - 使用正则表达式将 CSS 分解成 block

标签 css ruby regex

我有一个样式表:

a,b,c { stuff
        lots of it
}

b { more stuff }

.test { even more }

我想要一个正则表达式将它分成三个部分,从“}”到“}”应该可以满足我的需要(显然第一种情况除外)。

最佳答案

在 Ruby 1.9 中,你可以

result = subject.split(/(?<=\})/)

即,在 之后的位置拆分字符串。不过,Ruby 1.8 不支持后向断言,因此它在那里不起作用。当然,您会遇到嵌套大括号的问题,但您说过这不应该是您的数据的问题。

在 Ruby 1.8 中(这里不能尝试),下面的应该可以工作:

result = subject.split(/(\})/)

虽然现在右大括号不再是匹配元素的一部分。所以test {a} test2 {b}会被拆分成test {a, }, test2 {b , } 加上一个空字符串。

关于css - 使用正则表达式将 CSS 分解成 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3698226/

相关文章:

html - CSS 问题 : a:hover not working with IE (css Ninja needed)

html - 如何将具有 table-cell 显示属性的 html 元素向右推送?

javascript - 如何用JS制作无限跑马灯?

ruby-on-rails - 如何重命名或移动 Rails 的 README_FOR_APP

ruby-on-rails - 了解 Ruby/Rails 中的 block

css - 在 Bootstrap 选项卡的事件状态下添加图标字体

ruby - 在 Ruby 中转换纪元时间

javascript - 用正则表达式拆分字符串,在行首保留定界符

java - 如何在 Java 正则表达式匹配中使用 IsAlphabetic 二进制属性?

c++ - 在 CentOS 6.4 上使用 Boost.Regex 1.53 和 gcc 4.8.1 随机断言失败