簡體   English   中英

正則表達式以跨多行選擇文本

[英]Regular expression to select text across multiple lines

我試圖編寫一個正則表達式來選擇Java文件中兩個花括號之間的文本。 大括號之間的文本可能會跨越多行。

例如。,

{
   // line1 ;
   // line 2 ;
   // line 3 ;
}

我需要選擇括號之間的所有行。

我嘗試了\\{[.]*\\}但沒有選擇多行。

請在這方面建議我。 謝謝。

通常,這不是一個好主意,因為您需要考慮嵌套的括號等。 您最好改用解析器。
話雖如此,您可能會接受以下構造:

^\{
(.+?)
^\}

假設您的打開和關閉支架單獨成一行。 如果還希望允許空格,則需要將其更改為:

^\s*\{
(.+?)
^\s*\}

請參閱regex101.com上的演示 (並注意不同的修飾符,即DOTALLMULTILINE !)。

您需要在正則表達式中添加換行符...嘗試以下操作:\\ {(。* \\ r \\ n)* \\}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM