文档章节

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

大学霸
 大学霸
发布于 2016/11/14 10:38
字数 613
阅读 14
收藏 0
点赞 0
评论 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语言教程查找字符集和子字符串 

© 著作权归作者所有

共有 人打赏支持
大学霸
粉丝 247
博文 863
码字总数 556644
作品 0
东城
程序员
Swift3.0语言教程组合字符串

Swift3.0语言教程组合字符串 Swift3.0语言教程组合字符串,当开发者想要将已经存在的字符串进行组合,形成一个新的字符串,可以使用NSString中的两个方法,分别为appending(:)和padding(toL...

大学霸
2016/11/14
0
0
Swift3.0语言教程使用URL字符串

Swift3.0语言教程使用URL字符串 Swift3.0语言教程使用URL字符串,和路径一样,URL其实也是字符串,我们可以将这些字符串称为URL字符串。本小节将讲解URL字符串的使用。 1.编码 现在的网络存在...

大学霸
2016/11/18
75
0
Swift3.0语言教程字符串与URL的数据转换与自由转换

Swift3.0语言教程字符串与URL的数据转换与自由转换 Swift3.0语言教程字符串与URL的数据转换 Swift3.0语言教程字符串与URL的数据转换与自由转换,字符串中的字符永久保存除了可以保存在文件中...

大学霸
2016/11/21
41
0
Swift3.0语言教程使用Unicode范式标准化获取字符串

Swift3.0语言教程使用Unicode范式标准化获取字符串 Swift3.0语言教程使用Unicode范式标准化获取字符串,在NSString中可以使用4个属性去使用Unicode范式标准化获取字符串。这四个属性分别为:...

大学霸
2016/11/08
37
0
Swift3.0语言教程获取字符

Swift3.0语言教程获取字符 Swift3.0语言教程获取字符,在字符串中获取某一下标位置(下标索引)处的字符是很常见的功能,在NSString中使用character(at:)方法实现,其语法形式如下: func c...

大学霸
2016/10/28
6
0
Swift3.0语言教程获取字符串编码与哈希地址

Swift3.0语言教程获取字符串编码与哈希地址 Swift3.0语言教程获取字符串编码与哈希地址,以下将讲解字符串中其它内容的获取方法。 1.获取字符串编码 在NSString中可以使用2个属性获取字符串编...

大学霸
2016/11/10
9
0
Swift3.0语言教程获得一个公共的前缀

Swift3.0语言教程获得一个公共的前缀 Swift3.0语言教程获得一个公共的前缀,当在一个程序中有多个字符串时,我们需要判断是否有两个字符串有公共的前缀时,是很困难的。在NSString中的commo...

大学霸
2016/11/04
11
0
Swift3.0语言教程字符串转换为数字值

Swift3.0语言教程字符串转换为数字值 Swift3.0语言教程字符串转换为数字值,在NSString中,开发者可以将字符串转换为数字值,通过这些数字值可以实现一些功能,如加法运算、减法运算等。数字...

大学霸
2016/11/18
111
0
Swift3.0语言教程使用路径字符串

Swift3.0语言教程使用路径字符串 Swift3.0语言教程使用路径字符串,路径其实是字符串的一种,我们称为路径字符串。本小节将讲解如何使用路径字符串。 1.组合路径 开发者可以将数组快速的组合...

大学霸
2016/11/17
37
0
Swift3.0语言教程获取C字符串

Swift3.0语言教程获取C字符串 Swift3.0语言教程获取C字符串,为了让Swift和C语言可以实现很好的交互,开发者可以使用NSString的cString(using:)方法在指定编码格式后,获取C字符串,其语法形...

大学霸
2016/10/31
18
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

about git flow

  昨天元芳做了git分支管理规范的分享,为了拓展大家关于git分支的认知,这里我特意再分享这两个关于git flow的链接,大家可以看一下。 Git 工作流程 Git分支管理策略   git flow本质上是...

qwfys
今天
1
0
Linux系统日志文件

/var/log/messages linux系统总日志 /etc/logrotate.conf 日志切割配置文件 参考https://my.oschina.net/u/2000675/blog/908189 dmesg命令 dmesg’命令显示linux内核的环形缓冲区信息,我们可...

chencheng-linux
今天
1
0
MacOS下给树莓派安装Raspbian系统

下载镜像 前往 树莓派官网 下载镜像。 点击 最新版Raspbian 下载最新版镜像。 下载后请,通过 访达 双击解压,或通过 unzip 命令解压。 检查下载的文件 ls -lh -rw-r--r-- 1 dingdayu s...

dingdayu
今天
0
0
spring boot使用通用mapper(tk.mapper) ,id自增和回显等问题

最近项目使用到tk.mapper设置id自增,数据库是mysql。在使用通用mapper主键生成过程中有一些问题,在总结一下。 1、UUID生成方式-字符串主键 在主键上增加注解 @Id @GeneratedValue...

北岩
今天
2
0
告警系统邮件引擎、运行告警系统

告警系统邮件引擎 cd mail vim mail.py #!/usr/bin/env python#-*- coding: UTF-8 -*-import os,sysreload(sys)sys.setdefaultencoding('utf8')import getoptimport smtplibfr......

Zhouliang6
今天
0
0
Java工具类—随机数

Java中常用的生成随机数有Math.random()方法及java.util.Random类.但他们生成的随机数都是伪随机的. Math.radom()方法 在jdk1.8的Math类中可以看到,Math.random()方法实际上就是调用Random类...

PrivateO2
今天
2
0
关于java内存模型、并发编程的好文

Java并发编程:volatile关键字解析    volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在...

DannyCoder
昨天
0
0
dubbo @Reference retries 重试次数 一个坑

在代码一中设置 成retries=0,也就是调用超时不用重试,结果DEBUG的时候总是重试,不是0吗,0就不用重试啊。为什么还是调用了多次呢? 结果在网上看到 这篇文章才明白 https://www.cnblogs....

奋斗的小牛
昨天
2
0
数据结构与算法3

要抓紧喽~~~~~~~放羊的孩纸回来喽 LowArray类和LowArrayApp类 程序将一个普通的Java数组封装在LowArray类中。类中的数组隐藏了起来,它是私有的,所以只有类自己的方法才能访问他。 LowArray...

沉迷于编程的小菜菜
昨天
0
0
spring boot应用测试框架介绍

一、spring boot应用测试存在的问题 官方提供的测试框架spring-boot-test-starter,虽然提供了很多功能(junit、spring test、assertj、hamcrest、mockito、jsonassert、jsonpath),但是在数...

yangjianzhou
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部