gpt4 book ai didi

python - 正则表达式不将匹配识别为 True

转载 作者:太空宇宙 更新时间:2023-11-03 15:01:55 26 4
gpt4 key购买 nike

我有一个包含文本数据的数据框,我正在尝试清除具有空内容值的行。我有一行的内容列如下所示:

articles.loc[197040, 'content']
' '

我尝试使用 .isnull() 清理它,但它无法识别空字符串。所以我求助于正则表达式并尝试:

nothing = re.compile(r'\W{1,}')
articles = articles[articles['content'] != nothing]

但这会留下空文章。如果我尝试:

'     ' == nothing

我得到False。但是regex tester似乎表明这应该有效。使用 r'\W*' 也会返回 False

当尝试其他正则表达式组合时,其他无意义的字符串(例如逗号和空格的混合)仍然存在问题。

感谢您的帮助。

编辑:

这里也没有识别等效性:

'what.' == re.compile(r'\w*\.')
False

或者在这里:

'6:45' == r'[^A-Z]{1,}'
False

等等等等。

最佳答案

您可以使用 isspace 解决该问题内置,如果字符串中只有空白字符且至少有一个字符,则返回 true。

<小时/>

演示,还过滤空字符串:

import pandas as pd
articles = pd.DataFrame({'content' : ['foo','bar',' ','foo',' ','']})
articles = articles[(~articles['content'].str.isspace()) & (articles['content'] != '')]

>>> articles
content
0 foo
1 bar
3 foo

关于python - 正则表达式不将匹配识别为 True,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45002793/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com