2015-08-08 22 views
1

開頭我需要一個正則表達式字符串來查找以數字開頭的行。我未來的意圖是找到一個有序的列表。所以,如果你也知道如何做到這一點,我將不勝感激。但我無法弄清楚如何找到一個以數字開頭的行。Objective C正則表達式行以數字

這是我到目前爲止。

NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"(^[0-9].*)" options:0 error:nil]; 

例子:

1. Hello 
2. World 
3. How's it going eh? 
4. Another example string 

應該滿足所有這些字符串

+1

嘗試'@「(?m)^ [0-9]。*」' –

+0

您的正則表達式沒有什麼問題 - 它匹配輸入中以數字開頭的第一行。你需要解釋爲什麼它不能做你想做的事情,例如顯示你使用的正則表達式,你正在操作的字符串,它給你什麼,以及你想要它給你什麼。有了這些信息,有人可能會幫助你。 – CRD

+0

@Ven:我的建議有用嗎? –

回答

1

來匹配輸入多,你需要指定(?m)多修改。可那些列在NSRegularExpression Class Reference:(?ismwx-ismwx:...)


標誌設置。使用指定的標誌啓用或-disabled評估帶括號的表達式。標誌在標誌選項中定義。

NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"(?m)^[0-9].*" options:0 error:nil]; 
                       ^^^^ 

這種模式使得^並在,而不是整個字符串的開始和結束$匹配。

另請注意,在整個模式周圍使用捕獲組效果不佳,因爲整個匹配總是捕獲到組1中(例如[match rangeAtIndex:0];)。因此,我刪除了捕獲組(括號)。