python查找一个字符串在另外一个字符串指定范围中首次和最后一次出现的位置
时间: 2024-05-08 16:20:17 浏览: 149
计算一个字符串在另一字符串中出现的次数函数
5星 · 资源好评率100%
可以使用字符串的 find 和 rfind 方法来查找一个字符串在另外一个字符串指定范围中首次和最后一次出现的位置。
假设要在字符串 str 中查找子串 sub 在指定范围 [start, end) 中首次和最后一次出现的位置,可以使用以下代码:
```
start = 0 # 起始位置
end = 10 # 结束位置(不包含)
first_pos = str.find(sub, start, end)
last_pos = str.rfind(sub, start, end)
```
其中,find 方法返回子串 sub 在字符串 str 中首次出现的位置,如果不存在则返回 -1。rfind 方法返回子串 sub 在字符串 str 中最后一次出现的位置,如果不存在则返回 -1。
注意,指定范围 [start, end) 是一个左闭右开区间,表示从字符串的下标 start 开始(包含 start 对应的字符),到下标 end-1 结束(不包含 end 对应的字符)的字符范围。
例子:
```
str = "hello, world!"
sub = "l"
start = 0
end = 5
first_pos = str.find(sub, start, end)
last_pos = str.rfind(sub, start, end)
print("First position of '{}' in '{}' between {} and {}: {}".format(sub, str, start, end, first_pos))
print("Last position of '{}' in '{}' between {} and {}: {}".format(sub, str, start, end, last_pos))
```
输出:
```
First position of 'l' in 'hello, world!' between 0 and 5: 2
Last position of 'l' in 'hello, world!' between 0 and 5: -1
```
在这个例子中,子串 "l" 在字符串 "hello, world!" 中在指定范围 [0, 5) 中首次出现的位置是 2,最后一次出现的位置是 -1(表示不存在)。
阅读全文