2 回答

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超10個(gè)贊
嘗試
(?i)(?<!\d)Item.*?1A.*?Risk.*?Factors.*?\n*((.*\n*)+)\n*Item.*?1B
為了您未來的正則表達(dá)式頭痛,一個(gè)令人難以置信的資源: https ://regex101.com
干杯-

TA貢獻(xiàn)1866條經(jīng)驗(yàn) 獲得超5個(gè)贊
您的正則表達(dá)式匹配任意數(shù)量的換行符,然后是一行上任意數(shù)量的文本,然后是任意數(shù)量的換行符 - 它只在換行符之間尋找一個(gè)“段落”,因?yàn)?code>.它不會(huì)跨行捕獲。
嘗試用類似的東西替換它[\s\S]
,這將捕獲所有內(nèi)容 - 包括換行符、段落、文本、空格、任何你想要的東西。特別值得注意的是,這將捕獲任意數(shù)量的段落,它們之間有任意數(shù)量的空格。
(?i)(?<!\d)Item.*?1A.*?Risk.*?Factors\n*([\s\S]*?)\n*Item.*?1B
(?i)(?<!\d)Item.*?1A.*?Risk.*?Factors
匹配到風(fēng)險(xiǎn)因素結(jié)束。\n*
根據(jù)需要匹配盡可能多的換行符,直到我們到達(dá)下一段。([\s\S]*?)
捕獲任何內(nèi)容,跨越任意數(shù)量的行(惰性)。\n*
根據(jù)需要匹配盡可能多的換行符,直到我們到達(dá)下一段。Item.*?1B
匹配其余內(nèi)容。(這與最后的不匹配.
,您的意思是這樣嗎?如果是,請(qǐng)?zhí)砑?code>\.到最后)。
添加回答
舉報(bào)