原子编辑器

时间:2016-05-11 19:13:29

标签: regex atom-editor

我尝试在原子编辑器中使用lookbehind断言。我的文字如下:

            <stop color="rgb(0,0,153)"       value = "0.13"/>
            <stop color="rgb(0,0,180)"       value = "0.17"/>
            <stop color="rgb(0,0,223)"       value = "0.25"/>

我可以使用.*(?=color\=)进行前瞻性断言。它选择“color =”之前的所有内容。但是,如果我尝试使用lookbehind断言.*(?<=color\=)原子告诉我“无效的正则表达式”。似乎原子不会将<>识别为特殊字符,因为它显示的颜色与普通字母和数字相同。我也不能使用只有一次的子表达式?>

由于我没有真正找到一个暗示在原子中使用正则表达式的提示,我不知道应该使用哪个正则表达式。显然没有>的人......

我知道这是xml,我可以用xml方法提取值,但这不是我想在这里实现的部分。

2 个答案:

答案 0 :(得分:7)

原子论坛中的

This帖子显示,官方文档中确实仍然缺少有关正则表达方言的信息。但他们在讨论中写道,Atom使用Javascript正则表达式。并且Javascript正则表达式没有实现后看,而相反的是先行实现。

因此,您必须使用没有外观的解决方案。

答案 1 :(得分:1)

最近,前瞻和后视在 Atom 中工作。详情请参阅 Javascript 文档。

https://javascript.info/regexp-lookahead-lookbehind

下面是一个在 Atom 1.55.0 中同时使用负前瞻和后视的示例。

(?<!NoMatch)regexToMatch(?!NoMatch)