Atom 文本编辑器中的正则表达式,从字符串开头排除字符串 "abc"
Regular Expression in Atom Text Editor, exclude string "abc" from beginning of string
我有一些代码如下:
data[:value] = some_val
data[:value_two] = someval2
data[:total_value_three] = someval3
我想替换所有不包括总数的代码,
我想要以下结果:
data[:total_value] = some_val
data[:total_value_two] = someval2
data[:total_value_three] = someval3
我在文本编辑器中有很多这样的代码,
替换我使用的正则表达式:
\[:[^total]([A-z_0-9]*)\]
我用这个替换它:
[:total_]
它正在选择正确的数据,但它正在删除第一个字符,也就是说,它变成了 total_alue
而不是 total_value
。
你要找的是负面展望。你可以写成
\[:(?!total)([A-z_0-9]*)\]
(?!total)
这是一个消极的展望。它检查 :
是否是 而不是 后跟 total
.
[:[^total]([A-z_0-9]*)\]
有什么问题?
[^total]
这是一个否定字符class。它匹配的是一个字符,不是t
或o
或a
或l
。
我有一些代码如下:
data[:value] = some_val
data[:value_two] = someval2
data[:total_value_three] = someval3
我想替换所有不包括总数的代码, 我想要以下结果:
data[:total_value] = some_val
data[:total_value_two] = someval2
data[:total_value_three] = someval3
我在文本编辑器中有很多这样的代码, 替换我使用的正则表达式:
\[:[^total]([A-z_0-9]*)\]
我用这个替换它:
[:total_]
它正在选择正确的数据,但它正在删除第一个字符,也就是说,它变成了 total_alue
而不是 total_value
。
你要找的是负面展望。你可以写成
\[:(?!total)([A-z_0-9]*)\]
(?!total)
这是一个消极的展望。它检查:
是否是 而不是 后跟total
.
[:[^total]([A-z_0-9]*)\]
有什么问题?
[^total]
这是一个否定字符class。它匹配的是一个字符,不是t
或o
或a
或l
。