2013-09-26 110 views
1

我正在尋找一個正則表達式來幫助我匹配兩個字符串之間的文本。正則表達式在兩個字符串之間

我有以下字符串

Daily Update From: x.mydomain.local on DC01-PC 

我使用正則表達式如下

(?m)From: .*?on 

但我要的是嚴格僅從串拉x.mydomain.local。

有誰知道我該如何做到這一點。

乾杯,

+0

做什麼你需要'(?m)'作爲?這個修飾符只適用於錨點'^'和'$',你不會在你的正則表達式中使用它們,所以使用修飾符'(?m)'是沒有用的。 – stema

回答

3

您可以使用一個捕獲組(那麼你會得到x.mydomain.local第一個捕獲組):

(?m)From: (.*?) on 

或者使用lookarounds:

(?m)(?<=From:).*?(?= on) 
+0

這不是第二個捕獲組嗎? –

+1

@KlasLindbäcknope,因爲'(?m)'不是一個捕獲組。它只是設置'm'修飾符。 – HamZa

+0

@KlasLindbäck'(?...)'是保留給修飾符的,你可以有'(?s)','(?m)','(?i)'等,這取決於支持什麼。 (你甚至可以合併它們:'(?smi)')m是多行的,如果是單行的,我是不區分大小寫的。 – Jerry

相關問題