I've been unable to find an answer on this: can I use the Regex.Matches
method to return only the contents of items with curly braces?
If I use the Regex ({[^}]*})
my MatchCollection
values includes the braces. I want to match, but then only return the contents. Here's what I have so far:
Regex regex = new Regex(({[^}]*}), RegexOptions.IgnoreCase); MatchCollection matches = regex.Matches("Test {Token1} {Token 2}"); // Results include braces (undesirable) var results = matches.Cast<Match>().Select(m => m.Value).Distinct().ToList();
I always liked it explicit. So you can use "positive lookbehind" (?<=...) and "positive lookahead" (?=...) groups:
(?<=\{) [^}]* (?=\})
which means:
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