Regex 用于在方括号或花括号之间提取文本的正则表达式

Regex 用于在方括号或花括号之间提取文本的正则表达式,regex,Regex,与my相关,我有一个以下格式的字符串: this {is} a [sample] string with [some] {special} words. [another one] 提取方括号或方括号内单词的正则表达式是什么 {is} [sample] [some] {special} [another one] 注意:在我的用例中,括号不能嵌套。我还希望保留封闭字符,以便在处理结果时可以区分它们之间的差异。这一个似乎有效: [[{].*?[}\]] 或者这个: \[.*?\]|{.*?}

与my相关,我有一个以下格式的字符串:

this {is} a [sample] string with [some] {special} words. [another one]
提取方括号或方括号内单词的正则表达式是什么

{is}
[sample]
[some]
{special}
[another one]

注意:在我的用例中,括号不能嵌套。我还希望保留封闭字符,以便在处理结果时可以区分它们之间的差异。

这一个似乎有效:

[[{].*?[}\]]
或者这个:

\[.*?\]|{.*?}
如果你想抓住下面评论中提到的案例

您可以使用在线正则表达式测试仪来尝试这些东西。我认为这是一个更为用户友好的选项。

简单地说,或者(
|
)您希望将不同的内容组合在一起:


\[.*.\]\{.*.\}

如果字符串是
blah[{]blah{]}
?在[…]的情况下,这将失败。编辑以删除一个无关的“`”。@Carl,不,他说[{foo}[bar]](嵌套示例)没有发生。括号不能嵌套对我来说意味着[[]],这是正则表达式失败的典型情况。@Carl:您可以将[a]与
\[
匹配。为什么要使用
[[[]