Replacing with backreference in TextMate issue

前端 未结 2 1183

I am using TextMate to replace expression [my_expression] consisting in characters between open and closed brackets by {my_expression}; so I tried to r

2条回答
  •  没有蜡笔的小新
    2021-01-29 09:18

    You forgot to escape a character, [^]] should be [^\]].

    You also need a capture group. $1 is back-referencing the 1st Capture Group, and you had no capture groups, so use the following Regex:

    \[([^\]]*)\]
    

    This adds () around [^\]]*, so the data inside the [] is captured. For more info, see this page on Capture Groups


    However, this RegEx is shorter:

    \[(.*?)\]
    

    Also substituting with {$1}

    Live Demo on Regex101

提交回复
热议问题