swift4 字符串

// ------------  字符串 ---------

        // 1.拼接

        // 可变字符串

        let oneStr = NSMutableString.init()

        let twoStr = oneStr.appending("twoStr")

        let threeStr = twoStr.appending("threeStr")

        

        print("threeStr:",threeStr)

        

        // 不可变字符串

        let str1 = "str1"

        let str2 = "str2"

        let str3 = str1 + str2

        print("str3:",str3)

        

        // 2.字符串遍历

        for strTmp in str3 {

            print("遍历字符串:",strTmp)

        }

        

        // 3.个数

        print("字符串个数:",str3.count)

        

        // 4.字符串比较 & 是否包含前后缀

        let strSame1 = "abc"

        let strSame2 = "abc"

        

        if strSame1 == strSame2 {

            print("同")

        } else {

            print("不同")

        }

        

        // 前缀

        let aM = "a"

        

        if strSame1.hasPrefix(aM) {

            print("包含前缀")

        } else {

            print("不包含前缀")

        }

        // 后缀

        if strSame1.hasSuffix("b")  {

            print("包含后缀")

        } else {

            print("不包含后缀")

        }

        

        // 5 包含(2)

        let myString = "My name is Sky"

        

        if (myString.range(of: "Sky") != nil) {

            print("包含 Sky")

        } else {

            print("不包含 Sky")

        }

     

        // 包含(2)

        let string = "hello Swift";

        let subString = (string as NSString).contains("Swift")

        if(subString){print("包含")}

        

        // 6 字符串截取

        let helloWorld = "abcdefghijklmn"

        /*

         要对String操作,大多需要通过String.Index为中间媒介来达到。

         对于截取字符串,Swift4用的是[startIndex...endIndex]这样的语法,在String后跟一个区间。通俗讲,此区间的值要求用String.Index类型,下面我们来弄出一些Index值。

         */

        let startIndex = helloWorld.startIndex

        // 在起始Index基础上偏移5:

        let subIndex = helloWorld.index(startIndex, offsetBy: 5)

        /*

         在中括号里写两个值,可以得到一个子串,结果是SubString类型。

         这种写法...是闭区间,得到结果包括左右两个Index对应的字符;

         这种写法..<是开区间,得到结果包括了左Index对应的字符,但不包括右Index对应的

         */

        // 以上得到的结果,类型还不是String,只是SubString类型而已,还需要我们多做一步工作,构造String :

        let lasStr = String(helloWorld[...subIndex])

        print("字符串截取:",lasStr)

        

        // 7.替换

        let replaceStr = " replaceStr abcdefg"

        print("字符串替换:",replaceStr.replacingOccurrences(of: "r", with: "F"))

        

        // 8.分割成数组

        let strArray = "abce/fg/hijklmn"

        let aray = strArray.components(separatedBy: "/")

        print("分割成数组:",aray)

        print("数组拼接:",aray.joined(separator: "-"))

        

        //9. 字符串转为Data

        let dataStr = "a"

        

        print(dataStr.data(using: .utf8) ?? "falseDataStr")

发布了49 篇原创文章 · 获赞 7 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_29680975/article/details/93023097
今日推荐