正则表达式 - 删除除匹配文本之外的所有其他文本

Gir*_*iri 0 regex sublimetext2

我正在使用sublime text 2编辑器.我想删除除名称标记值以外的所有其他文本.

这是一个例子

<div class="control-group">
      <label class="control-label" for="c_email">Email (required)</label>
      <div class="controls">
        <input type="text" name="c_email" value="">
      </div>
    </div>
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,我想只保留名称标记值.要匹配所有名称标签,我使用这样的正则表达式

name="(.+?)"
Run Code Online (Sandbox Code Playgroud)

它匹配所有名称标签.但当我用它替换它时$1,只替换name="c_email"c_email

有人可以帮我删除所有其他文本吗?

谢谢

Cas*_*yte 9

你可以这样做:

find: [\s\S]*?name="(.+?)"[\s\S]*
replace: $1
Run Code Online (Sandbox Code Playgroud)

如果您想限制删除目标div:

find: <div class="control-group"[\s\S]*?name="(.+?)"[\s\S]*?</div>\s*</div>
replace: $1
Run Code Online (Sandbox Code Playgroud)