如何用下划线和C#中的字母替换每个大写字母? 注意:除非字符前面已经有下划线。
更新:
例如,
麦克琼斯
会变成
麦克_琼斯
但是麦克_琼斯
不会变成
迈克__琼斯
正则表达式是最好的方法吗?我从哪里开始呢?
最佳答案
正则表达式听起来最好:
string input = "Test_StringForYou";
string replaced = Regex.Replace(input, @"(?<!_)([A-Z])", "_$1");
Console.WriteLine(replaced);
输出:_Test_String_For_You
一定要添加using System.Text.RegularExpressions;
关于C# - 用下划线和字母替换每个大写字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2403621/