2017-05-29 73 views
0

在下面這行中,我需要將這兩行代入一行,方法是用空行代替換行符和空格。正則表達式npp - 搜索字符串必須後跟特定的字符,但不包括那些字符

Provisioned Links : 2/14, 2/24, 7/10, 7/12,
7/25, 7/31, 7/32

所以我有這樣的正則表達式(在記事本++):

(\r\n|\n)\s+[0-9]\/[0-9]* 

問題:比賽包括7/25 - 我需要它來尋找#/##,但不包括它。

如果我用這個lookaround模式:

(\r\n|\n)\s+(q=[0-9]\/[0-9])* 

所有行新行+空格開頭的匹配,它們是否與#/##結束。

我在做什麼錯?

regex101 fiddle to play with

+0

注意:您在預覽中存在拼寫錯誤。積極的先行結構以'(?='開始,除了捕獲組「(...)」外,其他所有的簇都以打開括號後的問號「?」開始,並且它們不是可量化的 – revo

+0

你可以編輯你的問題來添加一個明確的樣本,例如你在regex101中使用的樣本和有人蔘與的輸出。一點都不清楚。 –

回答

1

注意:

  • 你應該糾正你構建的先行方式:(?=....)
  • Lookarounds無法量化。

所以你真正需要的是[\r\n]\s+(?=[0-9]\/[0-9]*)

Live demo

+1

非常感謝提示! – crashwap

0

爲空白標準化,何不乾脆將「逗號與額外的空間後」和「逗號加一個製表符」?

你並不需要一個複雜的模式可言,因爲\s匹配空格,換行和製表符都在同一時間:

模式:,\s*

替換字符串:,\t

https://regex101.com/r/T0QJnq/1

相關問題