2016-11-29 16 views
-3

私はこの文字列から開始日時と終了日時を抽出しようとしましたが、それを行う方法はわかりませんでしたが、最初に "Start Time & Date"を見つけてから次の20文字をこの時点でそれらを日付と時刻に変換しようとしますが、これを行うにはよりよい方法があると推定していますか?Python/Regex - 文字列から開始/終了日時を取得しますか?

body = """ 
Dear Customer, 

Details of service affected: 

Start Time & Date: 02/12/2016 02:00 
Completion Time & Date: 02/12/2016 06:00  

Details of Work: 
Change faulty card 
""" 
if "Start Time & Date" in body: 
    #get next 20 chars? 
+0

。 –

+0

あなたのソリューションには何が問題なのですか?テンプレートが一定であれば問題ありません。 – kabanus

+1

re.findall( '\ d {2}/\ d {2}/\ d {4} \ d {2}:\ d {2}'、body) ' – ettanany

答えて

2

regexで試してみてください:あなたが唯一の次の16個の文字を取得する必要があります

>>> import re 
>>> 
>>> re.findall('\d{2}/\d{2}/\d{4} \d{2}:\d{2}', body) 
['02/12/2016 02:00', '02/12/2016 06:00'] 
-1
import re 
body = """ 
Dear Customer, 

Details of service affected: 

Start Time & Date: 02/12/2016 02:00 
Completion Time & Date: 02/12/2016 06:00  

Details of Work: 
Change faulty card 
""" 
my_time = re.search(r'\d{2}/\d{2}/\d{4} \d{2}:\d{2}', body) 
print (my_time.group()) 
+1

あなたは2つの '='記号があります、それを修正してください – ettanany

関連する問題