Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 正则表达式搜索并替换为分组_Regex_Vim_Notepad++ - Fatal编程技术网

Regex 正则表达式搜索并替换为分组

Regex 正则表达式搜索并替换为分组,regex,vim,notepad++,Regex,Vim,Notepad++,我有一个文件,有几百行,看起来像下面的。我的正则表达式技能不足以完成这项工作。 我尝试在Notepad++中使用regex进行搜索和替换,在vim中也尝试过(但失败) 这是我的正则表达式 公共字符串(^[A-Z]*[\S]){get;set} 所以我想让第一行看起来像这样 Foretag公共字符串Foretag{get;set;} 它后面的所有行都匹配我的搜索词Type=“string” 在Npp中,您可以这样做: 查找内容: ^(\w+) Type="(\w+)" 替换为: \1 publi

我有一个文件,有几百行,看起来像下面的。我的正则表达式技能不足以完成这项工作。 我尝试在Notepad++中使用regex进行搜索和替换,在vim中也尝试过(但失败)

这是我的正则表达式

公共字符串(^[A-Z]*[\S]){get;set}

所以我想让第一行看起来像这样

Foretag公共字符串Foretag{get;set;}

它后面的所有行都匹配我的搜索词Type=“string”


在Npp中,您可以这样做:

查找内容:

^(\w+) Type="(\w+)"
替换为:

\1 public \2 \1 { get; set; }
在Vim中:

:%s/\(\w*\).*string.*/\1 public string \1 { get; set }

+1、如果在
string
之前添加
Type=
会更好。当然,当前示例对该命令行没有问题。另外,我不明白如果一个标签是用vim标记的问题,为什么另一个标签仍然是必需的只是开个玩笑。。。回答得好!谢谢实际上,我想添加一个更通用、更坚实的解决方案(有更多的捕获组和不同的量词),但我决定不这样做,并将其保留在问题中的样本中。
:%s/\(\w*\).*string.*/\1 public string \1 { get; set }