我正在尝试过滤包含两个单词的所有行:mom
和dad
。
Family
My mom is a teacher.
My dad is a policeman.
Both my mom and dad are retired.
我的预期输出是
Both my mom and dad are retired
,因为它包含两个词。 我已经尝试过str.contains()。只是想知道是否还有另一种方法。
s = df.Family
searchfor = ['mom', 'dad']
found = [s.str.contains(x) for x in searchfor]
result = pd.DataFrame[found]
答案 0 :(得分:1)
使用正则表达式str.contains
尝试(?=.*mom)(?=.*dad)
,它将匹配包含mom
和dad
的字符串(这是通过使用两个前瞻性断言{{1}完成的) },即断言字符串与?=
和.*mom
都匹配):
.*dad