簡體   English   中英

正則表達式匹配由'!'分隔的單詞 並括在花括號'{''}'之間

[英]Regex to match words separated by '!' and enclosed between curly brackets '{' '}'

我正在嘗試解析一個字符串,並將所有包含在'!'的花括號{}之間的單詞括起來 在里面。
輸入示例:
"This is {matchA} and {matchB} but I need {matchC!matchD}, however {matchE} doesn't count but {matchF!matchG} is what I'm looking for"

我用(?<=\\{)(.*?)(?=\\}){(?:\\.|(\\\\{)|[^}'\\n])*}來獲取所有匹配{}之間但它返回以下匹配項:
"matchA""matchB""matchC!matchD""matchE""matchF!matchG"作為匹配

但是,我試圖只獲得有'!'的比賽 在它們中,結果應該只是: "matchC!matchD""matchF!matchG"並忽略其余部分。

我真的很感激幫助。 提前感謝大家的答案

將感嘆號放在那里並使用字符類而不是非貪婪。

{([^}]+![^}]+)}

暫無
暫無

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

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