我們在python的正規表示式使用過程中在手寫篩選內容的時候就會經常出現【nothing to repeat at position 0】這個問題,一般是由於符號不識別的問題我們看看錯誤示例啊:
info = r" |-|*|/|×|÷|x|X"
可以看到這個例外:
以上是一個正規的符號篩選,其中的加號【 】、乘號【*】在正規表示式的基礎符號內,相當於關鍵字,我們都知道,關鍵字不能使用,我們只需要在關鍵字外部套一層【[]】中括號即可。
我們試著解決一下:
可以看到成功了
#其實我只是用加號【 】做了實驗,其實正規表示式中有很多的符號,我們在需要取得這些符號的時候都需要按照以上的方式。
那麼,我在這裡羅列一下符號,在使用的過程中註意就好:
"*":符合前面的子表達式零次或多次。
" ":符合前面的子表達式一次或多次。
"?":符合前面的子表達式零次或一次。
"()":標記一個子運算式的開始和結束位置。
".":匹配除換行符\n 之外的任何單字元
"[":標記一個中括號表達式的開始
"\":將下一個字元標記為或特殊字符、或原義字元、或向後引用、或八進位轉義符。
"^":符合輸入字串的起始位置,除非在方括號表達式中使用,此時它表示不接受該字元集合
"{":標記限定符表達式的開始。
"|":指明兩項之間的一個選擇。
這只是符號,還有一些特殊的呢,例如:\d這種,其實也是需要使用中括號處理的呢。
以上是Python使用正規表示式報錯nothing to repeat at position 0怎麼解決的詳細內容。更多資訊請關注PHP中文網其他相關文章!