2014-02-20 63 views
0

我試圖匹配多行的文本。我的問題是換行符可能是不同的類型(\ n,\ r \ n或\ r)。目前我使用的是(?:\r?\n|\r),但想用多行模式替換爲$^,但當它們不在字符串的開頭或結尾時似乎不起作用。匹配多行與多行正則表達式

例如A$^B

A 
B 

A 
B 

我使用regex101來測試它不匹配。

回答

3

$^本身不匹配斷行字符,他們只在一行的末尾/開始匹配位置。你需要的,如果你都OK與任何空白

A\s*B使用類似

A[\r\n]+B 
+1

好吧,這有點不幸。但至少現在我知道我不能更輕鬆地檢測換行符。 B爲什麼逃脫? – xZise

+0

@nhahtdh:哦,謝謝你修復我的正則表達式!不知道反斜槓從哪裏來。 –

2

- 可以選擇有空白 A\s+B - 必須有一些空白

A[\r\n]+B - 必須至少有一個換行符\ r或\ n - 也會匹配a和b之間的多個空行。

+0

'\ s'可能是另一個不錯的解決方案,但我必須用我的完整正則表達式來測試。 – xZise