C# 如何用正则表达式替换下划线前的两个字符?
我有一个字符串示例:C# 如何用正则表达式替换下划线前的两个字符?,c#,regex,replace,C#,Regex,Replace,我有一个字符串示例: HU_husnummer HU_Adrs 我怎样才能取代胡?和米 因此,这将是MI_Husnumer和MI_Adrs 我不太擅长正则表达式,但我想用正则表达式解决它 编辑: 我现在拥有的示例代码仍然不起作用: string test = Regex.Replace("[HU_husnummer] int NOT NULL","^HU","MI"); 链接 使用子字符串 var abc = "HU_husnummer"; var result = "MI" + abc.
HU_husnummer
HU_Adrs
我怎样才能取代胡?和米
因此,这将是MI_Husnumer和MI_Adrs
我不太擅长正则表达式,但我想用正则表达式解决它
编辑:
我现在拥有的示例代码仍然不起作用:
string test = Regex.Replace("[HU_husnummer] int NOT NULL","^HU","MI");
链接
使用子字符串
var abc = "HU_husnummer";
var result = "MI" + abc.Substring(2);
替换为正则表达式
string result = Regex.Replace(abc, "^HU", "MI");
从你的评论来看,你实际上需要
string test = Regex.Replace("[HU_husnummer] int NOT NULL",@"^\[HU","[MI");
看一看这本书
如果输入字符串真的以HU开头,请从正则表达式模式中删除\[字符
正则表达式是@^\[HU注意正则表达式模式使用的逐字字符串文字符号:
^-匹配字符串的开头
\[-匹配文本,因为它是表示字符类开头的特殊正则表达式元字符
胡-符合胡的字面意思。
你的字符串在字符前总是只有一个HU?或replace?所以HU_Husnumer.ReplaceHU_,MI_是不够的?然后开始阅读regex教程,在寻求完整的解决方案之前尝试一些东西。我尝试了其他方法,我不会发布。我喜欢这样的事实,有人在3年后否决了它。你没有比这更好的方法了吗查看我的问题并对其进行否决?@user3436271:请不要添加提供反馈的答案,请在您的问题或其他人的答案中添加评论。
string test = Regex.Replace("[HU_husnummer] int NOT NULL",@"^\[HU","[MI");