python中 如何查找某字符串包含特定子串,并截取该子串之后的字符串
时间: 2024-10-09 21:06:34 浏览: 48
在Python中,你可以使用内置函数`find()`或`index()`来查找子串的位置,然后通过切片操作获取子串之后的部分。这里有两个例子:
1. 使用`find()`函数:
```python
def find_and_extract(s, sub):
index = s.find(sub)
if index != -1: # 如果找到子串,返回从子串开始到结束的所有字符
return s[index+len(sub):]
else:
return None # 没有找到子串,返回None
# 示例
s = "Hello, world!"
sub = "world"
result = find_and_extract(s, sub)
print(result) # 输出: ", !"
```
2. 使用`index()`函数,这个函数会抛出异常如果子串未找到:
```python
def find_and_extract_index(s, sub):
start_index = s.index(sub)
return s[start_index+ len(sub):]
# 示例
try:
result = find_and_extract_index(s, sub)
print(result) # 同上,输出: ", !"
except ValueError:
print("子串 not found")
```
这两个方法都会在找到子串后返回其后剩余的字符串。如果子串不存在于原字符串中,`find()` 返回-1,`index()` 抛出 `ValueError`。
阅读全文