我的文件中包含以下内容:
{
"performanceHighToLow" : {
tabs : {
bySales : "by sales",
byOrder : "by order"
},
category : "performanceHighToLow",
onTabClick
},
performanceLowToHigh : {
tabs : {
bySales : "by sales",
byOrder : "by order"
},
category : "performanceLowToHigh",
onTabClick
}
}
我想知道我是否可以写一个正则表达式引用所有引用的词。在同一主题上,有没有办法在冒号(:)出现之前选择完整的单词(单词边界)。
答案 0 :(得分:2)
要匹配冒号之前的单词,您可以匹配单词字符+可能的空格+冒号,但在单词本身后用\ze
停止匹配:
/\w\+\ze\s*:
要匹配行中可能的最后一个单词(行onTabClick
),您可以用冒号/ EOL修改前一个模式:
/\w\+\ze\s*\(:\|$\)
在这种情况下,可以更容易启用非常魔术来简化转义:
/\v\w+\ze\s*(:|$)
然后“引用”这些结果:
:%s/\v\w+\ze\s*(:|$)/"&"/g