Related to my previous question, I have a string on the following format:
this {is} a [sample] string with [some] {special} words. [another one]
What is the regular expression to extract the words within either square or curly brackets, ie.
{is}
[sample]
[some]
{special}
[another one]
Note: In my use case, brackets cannot be nested. I would also like to keep the enclosing characters, so that I can tell the difference between them when processing the results.
Simply or (|
) the different things you wish to match together:
\[.*?\]|\{.*?\}
This one seems to work:
[[{].*?[}\]]
Or this one:
\[.*?\]|{.*?}
If you want to catch the cases mentioned in the comments below.
You can use an online regex tester to try these things out. I think http://gskinner.com/RegExr/ is one of the more user-friendly options.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With