正则表达式,匹配括号之间的大写字符

时间:2014-09-07 15:32:52

标签: regex regex-negation regex-lookarounds

在RegEx中,我搜索一个选择多个大写字符(多于1个)的模式,这些字符没有用花括号括起来。

它应匹配:

ABC
AB
XYZABC

但不是:

{ABC}
{AB}
{XYZABC}

3 个答案:

答案 0 :(得分:1)

以下正则表达式仅匹配一个或多个大写字母时,如果它后面没有结束的}括号。

^[A-Z]+(?!.*?})$

DEMO

你可以使用perl正则表达式动词,

{.*?}(*SKIP)(*F)|[A-Z]+

DEMO

答案 1 :(得分:1)

尝试这种模式

[A-Z]+(?![^}{]*})  

Demo

答案 2 :(得分:0)

尝试这种模式:

{.*?}|([A-Z]+)

然后测试group1,如果不为空

Demo