如何生成正则表达式以捕获除大括号内容之外的所有内容

时间:2016-12-18 06:32:50

标签: regex language-agnostic regex-negation regex-lookarounds

我正在尝试匹配任何大小的字符串,不包括{和},如foo {bar},正则表达式应匹配foo而不是{bar}。

我最初提出的正则表达式是^([^${].*[}$])^(?=[{]).+(?<=[}]),但它们似乎没有按我的预期行事。

1 个答案:

答案 0 :(得分:0)

如果要获取不在{}内的所有字符,则可以使用正则表达式尝试拆分操作。

使用您的首选语言通过此正则表达式拆分字符串:

{*}?

返回的数组应该包含在每个{}

之外找到的段

以下java示例返回一个数组(arr):

String abc="19{22}33{44}55{66}7";
String[] arr=abc.split("\\{.*?\\}");

包含:

["19","33","55","7"]