我可以将 re2 库与 pandas 一起使用吗?

Can I use re2 library with pandas?

我正在使用 re2 库和 Python 3 使用这个库: https://github.com/andreasvc/pyre2

在这个例子中,我想在 pandas 中使用这个库:

pandas_series.str.contains(regex, case=False)

在这个例子中可以一起使用 pandas 和 re2 库吗?

由于 Pandas 正则表达式方法使用 re,您只能使用 apply 并使用 RE2 正则表达式传递自定义方法。

您可以使用

import pandas as pd
import re2
df = pd.DataFrame({'test': [ 'abc' , 'def' , '123' ]})
def re2_contains(s, rx):
    return bool(rx.search(s))

rex = re2.compile(r'^[a-z]+$')
>>> df['test'].apply(lambda x: re2_contains(x, rex))
0     True
1     True
2    False
Name: test, dtype: bool