2016-12-04 19 views
-1

我有這個輸入如何提取逗號之間的第一數目中的每一行與Python

XXXX,123456,sometext123456,123456,anothertext,123,

並且在再次重複每行的第一行(即大日誌文件的樣本)。

現在我想提取每行的第一個數字(123456後面的xxxx)。我試過這個正則表達式

(?<=,)[^,]+(?=,) 

但它不適合我的需要。

+2

沒有[這些](http://stackoverflow.com/search?q= [python] + extract + word + from +字符串)有幫助嗎? –

+0

這個數字是否會始終在第一個逗號之後? –

+0

是的,數字總是在第一個逗號後面 – alireza71

回答

3

試試這個正則表達式:^.*?(\d+).*$,其中第1組匹配行開始後的第一個數字。不要忘記多行標記,所以^$也匹配行的開始和結束。

matches = re.finditer(r"^.*?(\d+).*$", input, re.MULTILINE) 
for i, match in enumerate(matches): 
    print("n = " + match.group(1)) # Group 1 matches the number 
相關問題