Swift3.0语言教程替换子字符串
Swift3.0语言教程替换子字符串,替换子字符串其实就是将字符串中的子字符串删除,然后再进行添加。为了让这一繁琐的过程变的简单,NSString提供了替换子字符串的3个方法,这3个方法分别为:replacingOccurrences(of:with:)、replacingOccurrences(of:with:options:range:)和replacingCharacters(in:with:)方法。
(1)replacingOccurrences(of:with:)方法用来实现子字符串的替换,并返回一个新的字符串,其语法形式如下:
func replacingOccurrences(of target: String, with replacement: String) -> String
其中,target用来指定要替换的子字符串,replacement用来指定替换的目标字符串。
【示例1-53】以下将使用replacingOccurrences(of:with:)方法实现子字符串的替换。
import Foundation
var a=NSString(string:"Hello,Tom")
print("替换前:(a)")
var b=a.replacingOccurrences(of: "Tom", with: "Dave") //替换
print("替换后:(b)")
运行结果如下:
替换前:Hello,Tom
替换后:Hello,Dave
(2)replacingOccurrences(of:with:options:range:)方法和replacingCharacters(in:with:)方法类似,也是用来实现替换的。但是它比replacingCharacters(in:with:)方法多了两个参数:一个是options参数,该参数可以用来指定一个选项标记(这个标记可以作为替换的条件);另一个参数为searchRang,用来指定一个替换的范围。其语法形式如下:
func replacingOccurrences(of target: String, with replacement: String, options: NSString.CompareOptions = [], range searchRange: NSRange) -> String
【示例1-54】以下将使用replacingOccurrences(of:with:options:range:)方法实现子字符串的替换功能。
import Foundation
var a=NSString(string:"Hello,Tom")
print("替换前:(a)")
var b=a.replacingOccurrences(of: "TOM", with: "Dave", options: NSString.CompareOptions.caseInsensitive, range: NSMakeRange(0, a.length))
print("替换后:(b)")
运行结果如下:
替换前:Hello,Tom
替换后:Hello,Dave
(3)replacingCharacters(in:with:)方法也可以用来将指定范围的子字符串替换掉,其语法形式如下:
func replacingCharacters(in range: NSRange, with replacement: String) -> String
其中,range来指定在替换时字符集的范围,replacement用来指定替换的目标字符串。
【示例1-55】以下将使用replacingCharacters(in:with:)方法实现替换功能。
import Foundation
var a=NSString(string:"Hello,Tom")
print("替换前:(a)")
var b=a.replacingCharacters(in: NSMakeRange(0, a.length),with: "This is book")
print("替换后:(b)")
运行结果如下:
替换前:Hello,Tom
替换后:This is book
Swift3.0语言教程替换子字符串
推荐阅读:Swift3.0语言教程查找字符集和子字符串