[英]Regexp group matching number
我在emacs中使用正则表达式替换将第一项和第三项的双引号替换为单引号。 输入:
"term1" "term2" "term3" "term4"
(术语“分隔符”是制表符)
想要的输出:
'term1' "term2" 'term3' "term4"
我在下面使用正则表达式搜索和替换字符串:
搜索: "\\(.+?\\)" "\\(.+?\\)" "\\(.+?\\)"
替换: '\\1' "\\2" '\\3'
但是,实际输出代替第一和第四项 :
'term1' "term2" "term3" 'term4'
我的正则表达式有什么错误吗?
Elisp正则表达式很贪婪,因此我希望您的第一组实际上与整行匹配,而不仅仅是"term
”。 尝试以下方法:
"\([^"]+?\)" "\([^"]+?\)" "\([^"]+?\)"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.