Swift3.0语言教程替换子字符串

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语言教程查找字符集和子字符串