在Python中编写函数,用于查找给定字符串中的子字符串
发布时间:2023-06-11 06:20:35
在Python中,我们可以使用内置的find()函数来查找一个字符串中的子字符串。该函数返回子字符串的起始索引,如果没有找到则返回-1。
以下是查找子字符串的示例代码:
def find_substring(s, sub): index = s.find(sub) return index s = "Hello, world!" sub = "world" print(find_substring(s, sub)) # 输出结果为 7
在这个例子中,我们定义了一个函数find_substring(),该函数需要两个参数:一个是字符串s,另一个是要查找的子字符串sub。我们使用内置的find()函数来查找子字符串的起始索引,并将它返回。
在主程序中,我们定义一个字符串s和要查找的子字符串sub。我们调用find_substring()函数,并传入这两个参数。该函数返回子字符串的起始索引,最后我们将它打印到控制台上。
除了find()函数,我们还可以使用正则表达式来查找子字符串。以下是通过正则表达式查找子字符串的示例代码:
import re
def find_substring_regex(s, sub):
pattern = re.compile(sub)
match = pattern.search(s)
if match:
return match.start()
else:
return -1
s = "Hello, world!"
sub = "world"
print(find_substring_regex(s, sub)) # 输出结果为 7
在这个例子中,我们使用re模块来编译正则表达式模式,并将其存储在变量pattern中。我们调用search()函数,它会在字符串s中搜索模式,并返回第一个匹配项的起始索引。如果没有找到匹配项,则返回None。
最后,我们检查是否找到了匹配项。如果找到了,我们使用start()函数获取匹配项的起始索引,否则返回-1。
无论你使用哪种方法,你都可以在Python中很方便地查找子字符串。
