写点什么

Python——字符串查找 / 替换 / 分割

用户头像
在即
关注
发布于: 2021 年 06 月 10 日
Python——字符串查找/替换/分割

字符串查找、替换、分割

给定一个字符串,要利用 Python 提供的字符串处理方法,从该字符串中,查找特定的词汇,并将其替换为另外一个更合适的词。例如,给定一个字符串 Where there are a will, there are a way,我们发现这句话中存在语法错误,其中 are 应该为 is,需要通过字符串替换将其转换为 Where there is a will, there is a way。

在大家日常工作使用 Word 编写文档的过程中,经常会遇到一个问题,发现前面写的文档中某个词用错了,需要换为另外一个词来表达。Word

提供了全文查找与替换的功能,可以帮助用户很方便的处理这一问题。那么,这一功能最基础和核心的就是字符替换,如果我们要自己基于 Python

来实现,该怎么做呢?


1.字符串查找


  • Python

提供了内置的字符串查找方法 find(),利用该方法可以在一个较长的字符串中查找子字符串。如果该字符串中,有一个或者多个子字符串,则该方法返回第一个子串所在位置的最左端索引,若没有找到符合条件的子串,则返回 -1find() 方法的基本使用语法如下:

source_string.find(sub_string)


其中:

source_string:源字符串;

sub_string:待查的目标子字符串;

find:字符串查找方法的语法关键字。


例如,在一个字符串中,查找两个单词的位置:

# coding=utf-8

# 创建一个字符串

source_string = 'The past is gone and static'

# 查看"past"在 source_string 字符串中的位置

print(source_string.find('past'))

# 查看"love"在 source_string 字符串中的位置

print(source_string.find('love'))


输出结果:

4

-1


2.字符串替换


  • Python 提供了 replace() 方法,用以替换给定字符串中的子串。其基本使用语法如下:

source_string.replace(old_string, new_string)

其中:

source_string:待处理的源字符串;

old_string:被替换的旧字符串;

new_string:替换的新字符串;

replace:字符串替换方法的语法关键词。


例如,在如下字符串中,用 small 子串替换 big 子串:

# coding = utf-8

# 创建一个字符串 circle

source_string = 'The world is big'

# 利用 replace()方法用子串"small"代替子串"big"

print(source_string.replace('big','small'))

输出结果:

The world is small


3.字符串分割


  • Python

提供了 split() 方法实现字符串分割。该方法根据提供的分隔符,将一个字符串分割为字符列表,如果不提供分隔符,则程序会默认把空格(制表、换行等)作为分隔符。其基本使用语法如下:

source_string.split(separator)

其中:

source_string:待处理的源字符串;

separator:分隔符;

split:字符串分割方法的关键词。


例如,用+、/还有空格作为分隔符,分割字符串:

# coding = utf-8

# 待处理字符串 source_string

source_string = '1+2+3+4+5'

# 利用 split()方法,按照`+`和`/`对 source_string 字符串进行分割

print(source_string.split('+'))

print(source_string.split('/'))


输出结果:

['1', '2', '3', '4', '5']

['1+2+3+4+5']


编程要求


1.step1 :查找输入字符串 source_string 中,是否存在 day 这个子字符串,并打印输出查找结果;

2. step2 :对输入字符串 source_string 执行字符替换操作,将其中所有的 day 替换为 time,并打印输出替换后的字符串;

3.step3 :对 step2 进行替换操作后的新字符串,按照空格进行分割,并打印输出分割后的字符列表。


测试说明:

测试输入:

All day is no day when it is past.

预期输出:

4

All time is no time when it is past.

['All', 'time', 'is', 'no', 'time', 'when', 'it', 'is', 'past.']


上代码:

//如果注释理解有误,请大佬们多多评论指教!!

发布于: 2021 年 06 月 10 日阅读数: 117
用户头像

在即

关注

记录学习进度 2021.02.27 加入

一个入门小白白!

评论

发布
暂无评论
Python——字符串查找/替换/分割