[問題] 匹配字串中幾種可能(找副檔名)

作者: ponwar87123 (干我屁事喔北七)   2018-07-21 12:26:18
標題可能寫得有點文言文XD
簡單來說,我想寫一個找到某個目錄中所有的圖檔
那麼圖檔的副檔名就有很多種了,例如jpg,jpeg,bmp,png,gif等等
那麼我應該怎麼找到這些呢?
我用re.compile(r'.*\.[(jpg)(png)]')沒辦法找到,他仍然把當作一6個字符來找,所以多無關緊要的檔案都被算在裡面
最後是做一個list裡面存副檔名用for去跑
但覺得這樣會拖慢程式速度,
各位高手有解嗎~?
作者: TakiDog (多奇狗)   2018-07-21 12:31:00
list不用for // if 副檔名 in list
作者: guaptpan (Gua)   2018-07-21 12:40:00
re的pattern寫成’.*\.(jpg|bmp|png)’呢?裡面副檔名可以自己加上去
作者: coeric ( )   2018-07-21 12:46:00
樓上正解,用 | 來分隔
作者: mychiux413 (小邱)   2018-07-24 22:38:00
建議你先name, ext = os.path.splitext(filename)這樣才不會搜到'~/dir/av.jpgood.mp4'這種檔案ext是分離出的附檔名

Links booklink

Contact Us: admin [ a t ] ucptt.com