Select 并在特殊字符前替换整个单词
Select and substitute whole word before a special character
我的文件中有以下内容:
{
"performanceHighToLow" : {
tabs : {
bySales : "by sales",
byOrder : "by order"
},
category : "performanceHighToLow",
onTabClick
},
performanceLowToHigh : {
tabs : {
bySales : "by sales",
byOrder : "by order"
},
category : "performanceLowToHigh",
onTabClick
}
}
我想知道是否可以编写一个正则表达式来引用所有取消引用的单词。在同一主题上,有没有办法在冒号 (:) 出现之前 select 全词(词边界)。
要匹配冒号之前的单词,您可以匹配单词字符 + 可能的空格 + 冒号,但在单词本身之后停止匹配 \ze
:
/\w\+\ze\s*:
要同时匹配一行中可能的最后一个单词(第 onTabClick
行),您可以在冒号 / EOL 处使用或修改先前的模式:
/\w\+\ze\s*\(:\|$\)
在这种情况下,启用 very-magic 来简化转义可能更容易:
/\v\w+\ze\s*(:|$)
然后"quote"这些结果:
:%s/\v\w+\ze\s*(:|$)/"&"/g
我的文件中有以下内容:
{
"performanceHighToLow" : {
tabs : {
bySales : "by sales",
byOrder : "by order"
},
category : "performanceHighToLow",
onTabClick
},
performanceLowToHigh : {
tabs : {
bySales : "by sales",
byOrder : "by order"
},
category : "performanceLowToHigh",
onTabClick
}
}
我想知道是否可以编写一个正则表达式来引用所有取消引用的单词。在同一主题上,有没有办法在冒号 (:) 出现之前 select 全词(词边界)。
要匹配冒号之前的单词,您可以匹配单词字符 + 可能的空格 + 冒号,但在单词本身之后停止匹配 \ze
:
/\w\+\ze\s*:
要同时匹配一行中可能的最后一个单词(第 onTabClick
行),您可以在冒号 / EOL 处使用或修改先前的模式:
/\w\+\ze\s*\(:\|$\)
在这种情况下,启用 very-magic 来简化转义可能更容易:
/\v\w+\ze\s*(:|$)
然后"quote"这些结果:
:%s/\v\w+\ze\s*(:|$)/"&"/g