Unity3d 中C#判断string(字符串)是否以什么子串开头

可行方式

这里整理了三种可以实现的方式:

一 StartsWith

使用 string的内置函数,比较方便快捷:

  void DOStartsWith() {
    
    
        string str = "string";
        if (str.StartsWith("str"))
            Debug.Log(str + "StartsWith:" + "str");
    }

二 子串比较

先判断长度是否满足,然后Substring截取开始的几位字符,比较后判定。

 void DoSubStringCmp() {
    
    
        string str = "st";
        string substr = "str";
        if (substr.Length <= str.Length && str.Substring(0, substr.Length) == substr)
            Debug.Log(str + "StartsWith:" + "str");
    }

三 正则表达式

通过正则表达式的,字符串匹配判定。

  void DoRegex() {
    
    
        string str = "string";
        Regex reg = new Regex("str[.]*");
        if (reg.IsMatch(str))
            Debug.Log(str + "StartsWith:" + "str");
    }

总结

比较推荐第一种方式,方便快捷;而第三种正则表达式,比较强大,按各自的需求选用。

猜你喜欢

转载自blog.csdn.net/qq_33789001/article/details/114981404