使用C#正则表达式将字符串转换为字符串 [英] Use C# regex to convert casing in a string
本文介绍了使用C#正则表达式将字符串转换为字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何转换此字符串:
bKk_035A_paint-House_V003
到 BKK_035a_paint-House_v003
带有正则表达式(例如Regex.Replace)?
此正则表达式与字符串匹配:
with a regular expression (e.g. Regex.Replace)?
This regex matches the string:
^(?<Group1>[a-z][a-z0-9]{1,2})_(?<Group2>\d{3}[a-z]{0,2})_(?<Group3>[a-z-]+)_(?<Group4>v\d{3,5})$
- Group1 =大写
- Group2 =小写
- Group3 =不变
- Group4 =小写
感谢您的帮助,
帕特里克
Thanks for any help,
Patrick
推荐答案
正则表达式与第一个字符串不匹配...
the Regex doesn't match the first string...
我假设您想将前三个字符大写,并将其余的小写?
I assume you want the first 3 chars upper case, and the rest lowercase?
这是第一遍:
const string mod = @"^([a-z][a-z0-9]{1,2})(_\d{3}[a-z]{0,2}_[a-z]+_v{1}\d{3,5})$";
var converted =
new Regex(mod, RegexOptions.IgnoreCase)
.Replace(input1,
m => string.Format(
"{0}_{1}",
m.Groups[1].ToString().ToUpper(),
m.Groups[2].ToString().ToLower()
)
);
这篇关于使用C#正则表达式将字符串转换为字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文