Python 的檔名 Pattern

難免會有需要處理輸入的參數,要符合某種的 pattern, 在 呼叫 dropbox 的 create_folder API 傳回的訊息是:

Error: 400

Error in call to API function "files/create_folder": request body: path: 'abc' did not match pattern '(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)'


說明:

path 參數要用符號 /開頭

程式寫法:

import re
pattern = r'(/(.|[\r\n])*)|(ns:[0-9]+(/.*)?)'
match_object = re.match(pattern, path)
if not match_object:
    errorMessage = "path: '%s' did not match pattern." % (path)

 


第2個範例:

假設有一個檔案名稱為「2014-10-04 12.49.44.jpg」,我們可以使用下面的正規表達式從檔名取得時間資訊:

from datetime import datetime

#取得圖片建立時間
def get_time(filename):

    #針對 Dropbox 的 Camera Uploads
    pattern = r'\d{4}-\d{2}-\d{2} \d{2}\.\d{2}\.\d{2}'
    match_object = re.match(pattern, filename)
    if match_object:
        timestring = match_object.group(0)
        return datetime.strptime(timestring, '%Y-%m-%d %H.%M.%S')

 

相關文章:

使用 Python 的生活日常系列 [1] – 圖片整理
http://marco79423.twbbs.org/articles/%E4%BD%BF%E7%94%A8-python-%E7%9A%84%E7%94%9F%E6%B4%BB%E6%97%A5%E5%B8%B8%E7%B3%BB%E5%88%97-1-%E5%9C%96%E7%89%87%E6%95%B4%E7%90%86/

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *