polars.Series.str.contains#

Series.str.contains(
pattern: str | Expr,
*,
literal: bool = False,
strict: bool = True,
) Series[source]#

检查字符串是否包含与模式匹配的子字符串。

Parameters:
pattern

一个有效的正则表达式模式,与regex crate兼容。

literal

pattern 视为字面字符串,而不是正则表达式。

strict

如果底层模式不是有效的正则表达式,则引发错误,否则用空值屏蔽。

Returns:
Series

数据类型为 Boolean 的系列。

注释

要使用标志修改正则表达式的行为(例如大小写敏感性),请使用内联的 (?iLmsuxU) 语法。例如:

默认(区分大小写)匹配:

>>> s = pl.Series("s", ["AAA", "aAa", "aaa"])
>>> s.str.contains("AA").to_list()
[True, False, False]

不区分大小写的匹配,使用内联标志:

>>> s = pl.Series("s", ["AAA", "aAa", "aaa"])
>>> s.str.contains("(?i)AA").to_list()
[True, True, True]

有关内联表达式修饰符使用的更多信息,请参阅正则表达式库的分组和标志部分。

示例

>>> s = pl.Series(["Crab", "cat and dog", "rab$bit", None])
>>> s.str.contains("cat|bit")
shape: (4,)
Series: '' [bool]
[
    false
    true
    true
    null
]
>>> s.str.contains("rab$", literal=True)
shape: (4,)
Series: '' [bool]
[
    false
    false
    true
    null
]