【发布时间】:2016-01-21 20:18:35
【问题描述】:
我目前正在寻找在我的文本编辑器 SublimeText 3 中使用正则表达式进行查找/替换操作。
我有很多看起来像这样的行:
array(self::var1, self::var2, class::var_1, class::var_2, self::varCaps)
我想做的是匹配数组中的每个项目。我唯一确定的是,每个中间都有:: 字符。
我可以很容易地匹配 :: 字符之前的字符串
(?<=::)[a-zA-z0-9\_\-]+
//should match 'self::' in self::var1
我也可以在:: 字符之后使用
[a-zA-z0-9\_\-]+(?=::)
//should match 'var1' in self::var1
我如何结合这两个东西来创建一个匹配整个东西的表达式?
编辑:我的文本编辑器是 SublimeText 3
【问题讨论】:
-
不能使用逗号分隔符吗?看起来更简单。
-
你的文本编辑器是什么?维姆?正则表达式风格因编辑器而异。
-
1) 我可以在这种情况下使用逗号分隔符,但是我最终想为 SublimeText 设置一个小的自定义命令,该命令将使用正则表达式快速匹配任何
string::string2。 2) 我使用 SublimeText 3 作为我的编辑器。 -
\w+::\w+怎么样? -
史蒂文,你是一个天才......或者我只是很密集:P不知道为什么我没有想到这一点。不知何故,我想到我需要首先匹配
::
标签: regex sublimetext3 sublimetext