簡體   English   中英

長復雜字符串的Python正則表達式

[英]Python Regular Expression of long complex string

因此,我從網頁上抓取數據,接收到的數據通常如下:

233989 001 0 / 49 TR 4:15 PM - 5:30 PM 205 IST Building 01/13/14 - 05/02/14 Controls View (814) 865-8947 266200 002 0 / 43 MWF 10:10 AM - 11:00 AM 110 IST Building 01/13/14 - 05/02/14 Controls View (814) 865-8947

我試圖將數據從模式######(6個數字,即233989233989為代表當前數據行末尾的電話號碼(即(814) 865-8947 ),因為我知道總是以4個數字結尾我想出了這個表達式:

(^[0-9]{1,6}$[^[0-9]{1,4}$]*[0-9]{1,4}$+)+

不過,這似乎不起作用。 誰能伸出援手?

您可以使用此:

r'(\d{6}.*?\(\d{3}\) \d{3}-\d{4}) ?'

然后在$1\\n上重建它

像這樣: http : //regex101.com/r/lG4gG5

蟒蛇:

import re

s = '233989 001 0 / 49 T R 4:15 PM - 5:30 PM 205 IST Building 01/13/14 - 05/02/14 Controls View (814) 865-8947 266200 002 0 / 43 M W F 10:10 AM - 11:00 AM 110 IST Building 01/13/14 - 05/02/14 Controls View (814) 865-8947'
spl = re.split(r'(\d{6}.*?\(\d{3}\) \d{3}-\d{4}) ?', s)
for line in spl:
    print line

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM