博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
swift --字符串常用方法总结
阅读量:5943 次
发布时间:2019-06-19

本文共 2597 字,大约阅读时间需要 8 分钟。

hot3.png

在oc中有NSMutableString和NSString两种类型的字符串,但在swift中分别在定义的时候使用let和var来代表是否可以操作。let和var也通用于其他类型。使用let修饰的为不可变,使用var修饰的可变。

//使用var修饰可以动态的改变值        var varStr = "nihao"        varStr     = "hello"                //使用let修饰编译不能通过        let letStr = "let nihao"        letStr     = "hello"

常用方法

1、字符串拼接

字符串和字符的值可以通过+号来拼接并创建一个新的字符串

var varStr = "nihao"        varStr     = "hello"        let letStr = "let nihao"                var newStr = varStr + letStr        print(newStr)

可以通过+=运算符将一个字符串添加到一个已经存在的字符串常量上,当然此字符串必须是var修饰的

var varStr = "nihao"let letStr = "let nihao"varStr += letStr        print(varStr)

可以同过append附加给字符串一个字符

var varStr = "nihao"        let char :Character = "!"        varStr.append(char)        print(varStr)

2、字符串的带入

将需要操作的变量或者常量用()包住,并在前面带上\符

let number = 5let str = "\(number) 个人有 \(number * 3) 本书"print(str)输出结果:5 个人有 15 本书

3、字符串个数

获取字符串个数使用strlen函数

//字符串个数        let str = "ajsdjofijweoifjaowiejfoiaw"        let countOfStr = (strlen(str))        print(countOfStr)

4、字符串大小写

//字符串大小写        let normal = "nihao"        let uppercaseNormal = normal.uppercaseString        print(uppercaseNormal)  //结果为:NIHAO        let lowercaseNormal = uppercaseNormal.lowercaseString        print(lowercaseNormal)  //结果为:nihao        //首字母大写        var str = "hello my name is zjh"        let capitalezedStr  =  str.capitalizedString        print(capitalezedStr)   //结果为:Hello My Name Is Zjh

5、字符串截取

swift中截取字符串的坐标参数不是int类型,对应的参数为String.index。得创建对应的截取参数

//        字符串截取        let str = "abcdefghijklm"        let startIndex  = str.startIndex.advancedBy(3)  //起始        let endIndex    = str.endIndex.advancedBy(-2)   //结束        var range = Range
(start: startIndex,end: endIndex) //区域 var subString1 = str.substringToIndex(endIndex) var subString2 = str.substringFromIndex(startIndex) var subString3 = str.substringWithRange(range) print(subString1) print(subString2) print(subString3) //输出结果// abcdefghijk// defghijklm// defghijk

6、字符串比较

三种:字符串是否相等、前缀或后缀是否相等

//字符串比较        let str1 = "abcdefg.com"        let str2 = "abdoil.com"        if str1 == str2 {                        print("两者相等")        }                    //判断前缀        if str1.hasPrefix("ab") {                        if str2.hasPrefix("ag") {                                print("两个前缀相等")            }        }                //后缀        if str1.hasSuffix(".com") {                        if str2.hasSuffix(".com") {                                print("两个后缀相等")            }        }

 

转载于:https://my.oschina.net/zhengjianhua/blog/702048

你可能感兴趣的文章
Menu 菜单栏
查看>>
Integer跟int的区别(备份回忆)
查看>>
集合解析
查看>>
详解分布式应用程序协调服务Zookeeper
查看>>
软件工程之构建之法
查看>>
UVa 10902
查看>>
Mathf.Sin正弦
查看>>
禁止浏览器缓存js
查看>>
【Redis】安装PHP的redis驱动(二)
查看>>
java中string和int互相转化
查看>>
什么是序列化,为什么要序列化
查看>>
Java保留小数点后有效数字
查看>>
C++中一些类和数据结构的大小的总结
查看>>
mysql开启binlog
查看>>
ctrl + z fg bg
查看>>
工作流引擎Oozie(一):workflow
查看>>
struct框架
查看>>
Deep Learning(深度学习)相关网站
查看>>
设置Eclipse编码方式
查看>>
分布式系统唯一ID生成方案汇总【转】
查看>>