Re: [問題] 正規表達式 有好方法表達 非數字的字母嗎

看板Python作者 (Baska)時間9年前 (2016/03/08 08:54), 9年前編輯推噓1(106)
留言7則, 3人參與, 最新討論串3/4 (看更多)
※ 引述《opengood5566 ( )》之銘言: : 正規表達式 : \w代表著字母和數字和_ : \d代表數字 : 但如果要表達非數字的字母 可以[a-zA-Z] 但總覺得不簡潔 : 請問有比較好的表達 非數字的字母嗎? : 感謝 單純分享我的一個做法 , 不過先聲明我是在R把這段完成了 python我對函數方法使用熟練度還在練 , 所以還沒寫 我在R的做法是寫一個parse給 reg exp , 做這件事情 函數 大概長這樣: f(codi = "A,B" , switch = T) 大概會做的事情是把 , A B 兩個字串條件轉譯成 regular Exp 要吃的 or 形式 , switch 是決定是要有這些條件或是沒有這些 條件的內容 以這個概念我在function下面建立了一個parser,會將字串重組 並加入reg 需要的指令符號然後重新返回reg裡面 , 以這個概念 為例原po的問題可以寫好後在裡面做一個parser跟關鍵字判斷 如收到'*/aEn'跟 '*/AEn'還有 '*/AaEn' 或 '*/aAEn'分別 parse成大寫/小寫/大小寫 英文的reg形式 [a-z] [A-Z] [a-zA-Z] (大小寫條件這裡沒差用aA 跟Aa只是預期自己後續編程一定會 偷懶亂打) 所以以後使用reg變成 , reg(parser(codition string)),這不 是真實語法只是概念 感覺這麼好像沒有省到,但省的是後續,因為我的case是大量,可能 要在幾十萬比甚至更多的資料裡面撈一些關鍵字還有段落,需要導 入各種條件字串還有包不包括的訊息,所以我會覺得建立這樣一個 parser是有他的效益在的,但若是單純coding縮減這麼做其實沒啥 效益我承認 希望對原po有幫助 順便問一下,有沒有人知道python有沒有辦法處理模糊查詢跟同意 同音的功能 ? 或是有沒有人在github上看過有人分享的 ? 還是要 自己刻 ? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.160.170.68 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1457398445.A.931.html ※ 編輯: JackBaska (118.160.170.68), 03/08/2016 08:55:48 ※ 編輯: JackBaska (118.160.170.68), 03/08/2016 08:58:40 ※ 編輯: JackBaska (140.109.196.140), 03/08/2016 09:45:10

03/08 11:21, , 1F
不知道你要的模糊查詢是啥,我用過Levenshtein
03/08 11:21, 1F

03/08 11:22, , 2F
是算兩個字串的distance,你也可以上PyPI找找看
03/08 11:22, 2F

03/08 11:25, , 3F
重新想想,比對和查詢好像不太一樣,忽略掉我說的好了XD
03/08 11:25, 3F

03/08 17:30, , 4F
我之後有一些字詞會有模糊邏輯問題,如果有套件能幫我回
03/08 17:30, 4F

03/08 17:31, , 5F
傳是否 '意思相近' 那我可以把他的結果導進我寫的func
03/08 17:31, 5F

03/08 17:31, , 6F
幫我做reg 比對
03/08 17:31, 6F

03/08 18:51, , 7F
感覺有像漢明距離又不像
03/08 18:51, 7F
文章代碼(AID): #1MtYAjan (Python)
討論串 (同標題文章)
文章代碼(AID): #1MtYAjan (Python)