如何构建一个正则表达式来替换第一次出现的#
with _
。
我需要更改f2b1_last_name_buyer
为 f2b1#last_name_buyer
resultString = Regex.Replace(subjectString, "^([^_]+)_", "#", RegexOptions.Singleline);
但它会将所有字符都擦到第一个 _
你可以这样做:
var input = "f2b1_last_name_buyer";
var pattern = "_";
var regex = new Regex(pattern);
var result = regex.Replace(input, "#", 1);
//Do something with result
Regex.Replace(subjectString, "^([^]+)", "#", RegexOptions.Singleline, 1);
最后一个参数是停止前要进行的替换次数。
请参阅此处的示例:http: //msdn.microsoft.com/en-us/library/haekbhys.aspx