You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中如何忽略大小写查找字符串子串的位置

Python忽略大小写的子串查找方法

要实现忽略大小写的子串查找,有两种常用的简单方法:

方法一:统一转换大小写后用find

直接把原字符串和目标子串都转成小写(或大写),再调用find,返回的位置和原字符串完全对应:

mystring = "my eMaIL address is example@example.com"
target = "email"
# 转成小写后查找
pos = mystring.lower().find(target.lower())
print(pos)  # 输出:3

这种方法不需要额外导入模块,代码简洁,适合简单的子串匹配场景。

如果需要更灵活的匹配规则(比如复杂正则),可以用re模块的search方法,搭配re.IGNORECASE标志实现忽略大小写查找:

import re

mystring = "my eMaIL address is example@example.com"
match_result = re.search(r'email', mystring, re.IGNORECASE)
if match_result:
    pos = match_result.start()
    print(pos)  # 输出:3
else:
    # 没找到时返回-1,和find行为一致
    pos = -1

这个方法能处理更复杂的匹配需求,比如带特殊字符的子串、多模式匹配等。

注意:两种方法都会返回第一个匹配子串的起始位置,和find的默认行为一致;如果没有匹配到,都会返回-1(正则方法需要自行处理None的情况)。

内容的提问来源于stack exchange,提问作者dipese

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 17:45:31