欢迎访问宙启技术站
智能推送

在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中很方便地查找子字符串。