Regex 使用正则表达式在Visual Studio中查找和替换
我发现您可以在VisualStudio中的查找和替换中使用正则表达式进行搜索查询。我有很多类似的行,比如:Regex 使用正则表达式在Visual Studio中查找和替换,regex,visual-studio,visual-studio-2012,Regex,Visual Studio,Visual Studio 2012,我发现您可以在VisualStudio中的查找和替换中使用正则表达式进行搜索查询。我有很多类似的行,比如: 基准[“Id”]=Id; 数据[“名称”]=名称; 我还有更多这样的话: 此.Id=基准[“Id”]; this.Name=datum[“Name”]; 我想把第一行转到: 数据集(“Id”,Id); 数据集(“名称”,名称); 第二组行用于: this.Id=datum.Get(“Id”); this.Name=datum.Get(“Name”); 如何使用Find和Re
基准[“Id”]=Id;
数据[“名称”]=名称;
我还有更多这样的话:
此.Id=基准[“Id”];
this.Name=datum[“Name”];
我想把第一行转到:
数据集(“Id”,Id);
数据集(“名称”,名称);
第二组行用于:
this.Id=datum.Get(“Id”);
this.Name=datum.Get(“Name”);
如何使用Find和Replace以及Regex?我想不出来。单击“使用正则表达式”按钮启用正则表达式后,将以下内容放入“查找”中:
datum\[\“Id\”\]\s*=\s*Id\代码>
并在replace中放置以下内容(无需在replace中使用正则表达式):
同样地:
在查找中:
datum\[\"Name\"\]\s*=\s*name\;
this\.Name\s*=\s*datum\[\"Name\"\]\;
替换为:
datum.Set("Id", id);
datum.Set("Name", name);
在查找中:
this\.Id\s*=\s*datum\[\"Id\"\]\;
替换为:
this.Id = datum.Get<int>("Id");
this.Name = datum.Get<int>("Name");
替换为:
this.Id = datum.Get<int>("Id");
this.Name = datum.Get<int>("Name");
this.Name=datum.Get(“Name”);
我认为您需要在replace字段中使用替换的通用正则表达式
这句话:
([a-zA-Z0-9_]+)\["([a-zA-Z0-9_]+)"\] = ([a-zA-Z0-9_]+);
匹配你的第一行
您应该在“查找…”字段中输入
此表达式允许您进行所需的替换:
$1.Set("$2", $3);
将其放入“替换…”字段
像这样的编号表达式将替换中的$n
作为原始正则表达式中由(…)
定义并按顺序编号的组的目标
因此,第二行的替换内容如下:
查找:(此[a-zA-Z0-9\]+)=([a-zA-Z0-9\]+)\[”([a-zA-Z0-9\]+)”\]代码>
替换:$1=$2.Get($3”)代码>
你可以找到更多关于
顺便说一句,你的字符串太容易了,不能与正则表达式一起使用。正则表达式更有用的用法是查找不完整字符串的模式代码>不仅将取代datum…
,而且还将取代hello…
。这太宽泛了,会破坏代码。@GilbertWilliams我的回答对你有帮助吗?如果有,请把它标为答案。