我在这里看到了不同的答案,但不幸的是,这些答案都不适合我的情况.所以我希望你不介意.
所以我需要匹配两个大括号{}之间的所有内容,除了匹配以@开头且没有这些大括号的情况,例如:
这是我的测试字符串,1,2,3有效,而最后一个不应该是:
1 {eww}
2 r23r23{fetwe}
3 #{d2dded}
4 @{d2dded}
Run Code Online (Sandbox Code Playgroud)
我正在尝试:
(?<=[^@]\{)[^\}]*(?=\})
Run Code Online (Sandbox Code Playgroud)
然后只有第2和第3个选项匹配(没有第一个) https://regex101.com/r/qRInUf/2/
然后我在尝试:
\{(.*?)\} or [^@]\{(.*?)\}
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,我都无法匹配1,2,3值 https://regex101.com/r/uYRtLD/1
在此先感谢您的任何建议.
编辑:这是为java.