我的客户从一个应用程序提交了一个字符串,我无法对其进行验证以限制发送这些字符串。因此,我正在尝试编写一个C#函数将字符串拆分为键值对/确保字符串与格式匹配,以便分割成键值很容易。
以下是我的例子(ABCD在这里很常见),我得到的答案应该以下面的形式为例子
ABCD 1234应该是 - > ABCD-1234
ABCD 1234(其间有两个或两个空格)应为ABCD-1234
ABCD 1234应该是(以空格开头) - > ABCD-1234
ABCD XX1234应该是 - > ABCD-XX1234
ABCD - Z1234应该是 - > ABCD-Z1234
ABCDTE ST QA1234应该是 - > ABCD-QA1234
A-BCD 1234 ABCD-1234
另外,如果可能的话,我需要将它集成到上面的相同功能中。
ABCDE-GHI491803应为WXYZ-491803
ABCDEFGH CT542021应为WXYZ-CT542021
答案 0 :(得分:1)
对于某些要求,您可以为字符串编写扩展方法,例如:
public static class StringExtensions
{
public static string FormatMyString(this string input)
{
input = Regex.Replace(input, @"-+", " ");
return Regex.Replace(input, @"\s+", " ").Replace(" ", "-");
}
}
然后在您的代码中,您可以按如下方式使用它:
var formatted = "ABCD-- 1234".FormatMyString();
但更换字母......我在那里看不到任何逻辑......你有多少啤酒?