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

如何用pandas的str.contains匹配DataFrame中含独立"And"的行?

筛选Pandas中包含独立字符串"And"的行

问题背景

现有DataFrame:

import pandas as pd
df = pd.DataFrame({"name": ["Andrew", "Jen And Jess","Gin And"]})

需要筛选name列中包含**独立字符串"And"**的行。当前使用df[df["name"].str.contains('AND',na=False)]会误匹配"Andrew"这类包含"And"子串的行,不符合需求。

预期输出:

name
1  Jen And Jess
2       Gin And

解决方案

要匹配独立的单词,需借助正则表达式的单词边界\b,它会匹配单词与非单词字符的边界,确保"And"是独立存在的单词而非子串。

精准匹配大小写严格的"And"

df[df["name"].str.contains(r'\bAnd\b', na=False)]

不区分大小写匹配(支持And/AND/and等变体)

如果需要兼容不同大小写的"And",可以使用flags参数指定忽略大小写:

import re
df[df["name"].str.contains(r'\band\b', na=False, flags=re.IGNORECASE)]

以上代码均可得到符合预期的筛选结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 21:05:21