簡體   English   中英

使用遞歸正則表達式中斷列表

[英]Using recursive regex to break a list

我第一次嘗試使用遞歸正則表達式來拆分列表中的項目,但遇到多個匹配項時遇到了麻煩。

我有一個字符串,例如array(string,boolean) 我想從內部提取stringboolean ,所以有這個正則表達式:

array\((?:([a-z]+)[,\S]*)(?:(?R)|\))

使用regex101.com進行測試時,我成功匹配了string ,但是沒有匹配boolean 我試圖四處走動,以防分組方式錯誤。

我想知道我哪里出錯了的建議? 還是我誤解了遞歸正則表達式的工作原理?

為了幫助: https : //regex101.com/r/Vkmvr0/2

如果我猜對了,您可能會選擇的另一種選擇是使用環顧四周,例如使用類似於以下內容的表達式:

(?<=\(|,)[^\r\n,)]*(?=,|\))

如果您想瀏覽/簡化/修改該表達式,請在regex101.com的右上方面板中進行說明 如果願意,您還可以在此鏈接中觀看,它將如何與某些示例輸入匹配。


暫無
暫無

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

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