C#替换匹配起始端的表达式
有谁能帮我在C#中替换任何以“startingChars”开头,以“endingChars”结尾的字符串……类似这样的内容:C#替换匹配起始端的表达式,c#,regex,replace,C#,Regex,Replace,有谁能帮我在C#中替换任何以“startingChars”开头,以“endingChars”结尾的字符串……类似这样的内容: Regex.Replace(strToReplaceIn, "startingChars[anyNumberOfChars]endingChars", myFunction(anyNumberofChars)); 其中strStartingChars和StrengtingChars是两个字符串,定义了myFunction 例如,如果起始字符是“Hello,我需要将Sta
Regex.Replace(strToReplaceIn, "startingChars[anyNumberOfChars]endingChars", myFunction(anyNumberofChars));
其中strStartingChars和StrengtingChars是两个字符串,定义了myFunction
例如,如果起始字符是“Hello,我需要将StartingChars替换为\u SOMETHING indingChars,…”结果是:“Hello,我需要将myFunctionResult(“替换为\u SOMETHING”),…”
请告诉我Regex.Replace表达式会有帮助,问题不是找到匹配的表达式,而是替换…我如何引用
anyNumberOfChars
在表达式的替换参数中
我希望它足够清楚…谢谢你你应该使用这样的regexp:
abc.*xyz
abcblablablaxyz
它将匹配如下字符串:
abc.*xyz
abcblablablaxyz
考虑使用最小匹配:
abc.*?xyz
这将只匹配到第一个xyz,而不是搜索到最后一个。您应该使用这样的regexp:
abc.*xyz
abcblablablaxyz
它将匹配如下字符串:
abc.*xyz
abcblablablaxyz
考虑使用最小匹配:
abc.*?xyz
这将只匹配到第一个xyz,而不是搜索到最后一个。^yourString&
^-表示字符串的开头&-字符串的结尾^yourString& ^-表示字符串的开头
&-字符串结尾您可以使用命名组轻松获取要替换的内容,并使用匹配计算器构造替换字符串:
using System.Text.RegularExpressions;
static class Program {
static void Main(string[] args) {
string strToReplaceIn = "Hello, I need to replace startingCharsWITH_SOMETHINGendingChars, ....";
string replaced = Regex.Replace(strToReplaceIn, "startingChars(?<contents>.*?)endingChars", (match) => {
return "myFunctionResult(" + match.Groups["contents"].Value + ")";
});
}
}
(注意:组[0]代表整个匹配)您可以使用命名组轻松获取要替换的内容,并使用匹配计算器构造替换字符串:
using System.Text.RegularExpressions;
static class Program {
static void Main(string[] args) {
string strToReplaceIn = "Hello, I need to replace startingCharsWITH_SOMETHINGendingChars, ....";
string replaced = Regex.Replace(strToReplaceIn, "startingChars(?<contents>.*?)endingChars", (match) => {
return "myFunctionResult(" + match.Groups["contents"].Value + ")";
});
}
}
(注意:组[0]代表整个匹配)这正是我需要的…非常感谢,请注意:
{return“myFunctionResult”(+match.Groups[“contents”].Value+);}
成为我的表单myFunction(match.Groups[“contents”].Value;
@SandraS.很高兴它有帮助:)干杯这正是我所需要的……非常感谢,请注意:{return“myFunctionResult”(+match.Groups[“contents”].Value+);}
成为我的表单myFunction(match.Groups[“contents”].Value;
@SandraS.庆幸它有帮助:)干杯