23_Python字符串查找与替换

一、find()

  • 表明查找指定字符串在整个字符串中第一次出现的位置,返回的是下标,若未找到返回-1
str1 = "1234567890qwertyuiJKLFKJFmjfFKPJFMNBKDJALeiro"
print(str1.find("A"))    # 39 查找的范围是整个字符串
print(str1.find("H"))    # -1 若在字符串中未找到返回-1
# find() 还可以在指定范围内查找
print(str1.find("F", 20, 30))    # 21 在指定的范围内查找

二、index()

  • 功能和 find() 类似,若未找到直接报错
str1 = "1234567890qwertyuiJKLFKJFmjfFKPJFMNBKDJALeiro"
print(str1.index("A"))   # 查找的范围是整个字符串
print(str1.index("H"))   # ValueError: substring not found

三、rfind()

  • 表明查找指定字符串在整个字符串中最后一次出现的位置,若找到返回下标,未找到返回-1
str1 = "1234567890qwertyuiJKLFKJFmjfFKPJFMNBKDJALeiro"
print(str1.rfind('A'))   # 39 查找的范围是整个字符串
print(str1.rfind("H"))   # -1 表明未找到,返回-1
# rfind() 在指定范围内查找,若找到返回下标,未找到返回-1
print(str1.rfind("A", 30, 50))

四、按照ASCII码值获取

  • max() 最大,min() 最小
str1 = "1234567890qwertyuiJKLFKJFmjfFKPJFMNBKDJALeiro"
print(max(str1))    # 获取字符串中ASCII码值最大的 y
print(min(str1))    # 获取字符串中ASCII码值最小的 0

五、replace()

  • replace(要替换的内容,替换后的内容,替换的次数) 使用指定内容对字符串中的某些内容进行指定次数的替换,若未指定替换次数,表明全部替换;第三个参数:替换的次数是可选参数,可以写可以不写

六、全部替换

  • 将str1中的本田替换为 *
str1 = "本田在中国市场享有很高的名声,并且雅阁和思域在国内市场超级受欢迎,尽管在竞争力方面稍逊于大众和丰田。为了增强竞争力,本田推出了新一代旗舰车型 - 本田Insight,巩固其国内市场地位。预计新一代本田Insight将于2025年在中国市场上市,定位于思域和雅阁之间,预计售价在10万元左右。"
print(str1.replace("本田", "*"))

七、控制替换的次数

  • 将str1中的本田替换为 * 替换 2 次
str1 = "本田在中国市场享有很高的名声,并且雅阁和思域在国内市场超级受欢迎,尽管在竞争力方面稍逊于大众和丰田。为了增强竞争力,本田推出了新一代旗舰车型 - 本田Insight,巩固其国内市场地位。预计新一代本田Insight将于2025年在中国市场上市,定位于思域和雅阁之间,预计售价在10万元左右。"
print(str1.replace("本田", "*", 2))
© 版权声明

相关文章

暂无评论

none
暂无评论...