簡體   English   中英

如何檢查字符串是否出現在非字母數字的列中?

[英]How to check if character string is present in column that is not alphanumeric?

我有看起來像這樣的df:

id    col1 
1     [[[[[[['metal', 'soundtracks'], 'jazz'], 'indie'], 'hiphop'], 'rock'], 'pop'], 'electronic']

如果出現字符[我想應用我的邏輯。 我該怎么做?

我試過了:

df['col1'].str.contains('[').any()

但我得到錯誤:

error: unterminated character set

還嘗試了以下組合:

df['col1'].str.contains("[").any()
df['col1'].str.contains("'['").any()
df['col1'].str.contains('"["').any()

都得到相同的錯誤。

我已經確認相關列的dtype是object

我的目標是掃描符號[並應用我的邏輯來清理數據。

if df['col1'].str.contains('[').any():
                 my logic

還嘗試像這樣將列強制設置為字符串,但得到相同的答案:

df.col1 = df.col1.astype(str)

編輯:

試過這個:

如果df ['col1']。str.contains('[',regex = False).any()==真:

    my logic
else:
    print('all good')

即使存在該字符,我在if語句上也得到了錯誤

有問題[是特殊的正則表達式字符,因此必要的參數regex=False

df['col1'].str.contains('[', regex=False).any()

或通過\\轉義值:

df['col1'].str.contains('\[').any()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM