我正在开发一个带有用户ID的登录表单.我希望用户以指定的格式创建用户标识.我需要一个使用C#将所有小写字母转换为大写的方法.用户标识将位于以下fomat中.格式为:
xyz\t4z4567(字符不区分大小写)
规则:
1.创建用户名时只允许使用特殊字符\.2. UserID sholud被转换为大写.like(xyz - > XYZ)我需要检查用户在创建用户标识时是否输入任何特殊字符.如果UserID中存在任何特殊字符,则方法needshold删除特殊字符,并将所有小写字母转换为大写字母.
最后结果应该是以下方式:
xyz\t4z45 @ 67 ---> XYZ\T4Z4567
我使用以下方法检查字符串是否包含以下字符,如果是,我将替换为空.
public string RemoveSpecialChars(string str)
{
string[] chars = new string[] { ",", ".", "/", "!", "@", "#", "$", "%", "^", "&", "*", "'", ";", "-", "_", "(", ")", ":", "|", "[", "]" };
for (int i = 0; i < chars.Length; i++)
{
if (str.Contains(chars[i]))
{
str = str.Replace(chars[i], "");
}
}
return str;
}
Run Code Online (Sandbox Code Playgroud)
使用以下Regex替换:
outputStr = System.Text.RegularExpressions.Regex.Replace(inputStr, @"[^a-zA-Z0-9_\\]", "").ToUpperInvariant();
Run Code Online (Sandbox Code Playgroud)
输入:inputStr=@"xya\t4z567"
输出:"XYA\T4Z567"