日期:2014-05-18  浏览次数:20940 次

C# 如何判断一个字符串以400,800,1开头
如题:

------解决方案--------------------
StartsWith
------解决方案--------------------
if(str.StartWith("400,800,1"))
------解决方案--------------------
取这个字符串的前9位和400,800,1比较
也可以用正则
------解决方案--------------------
探讨

取这个字符串的前9位和400,800,1比较
也可以用正则

------解决方案--------------------
string的 StartsWith 判断,或者
正则
C# code

Regex reg = new Regex(@"^(800|400|1).*");

------解决方案--------------------
如果你是想判断一个字符串以800或者400或者1开头的话,可以写一个扩展方法:
C# code

    public static class Ext
    {
        public static bool StartsWith(this string s, params string[] prefix)
        {
            return prefix.Any(p => s.StartsWith(p));
        }
    }
    //用法:
    bool result = s.StartsWith("1", "400", "800", "30"); //是否以1或者400或者800或者30开头

------解决方案--------------------
StartsWith简单
------解决方案--------------------
Loop:
接收 
拆解
操作
组合
发送

------解决方案--------------------
C# code
string str = "400526398|800046846|12365478965|33444425";
string[] arr = str.Split('|');
if (arr[0].StartsWith("400") && arr[1].StartsWith("800") && arr[2].StartsWith("1"))
{
    arr[3] = "110" + arr[3];
    string result = string.Join("|", arr);
}