你好,堆栈溢出。正如我在上一篇文章中提到的,我正在努力提高正则表达式的水平。我今晚正在阅读我的书籍章节,并决定看看我是否可以,如果可能的话,创建多个组。我完全意识到 Regex 并不是所有这一切的答案,这纯粹是为了让我学习。我正在使用 VB.net
示例输入:
MyTokenName{%@example1%, %@example2%}
MyTokenName{example1, example2}
现在这是一个由我自己完成的输出来测试。这个表达式的一致因素是Name{ }
总会有一个只由a-z
第一个组成的名称。大括号内。分隔两个组的主要分隔符是,
在组开始之前会有一个以 OPTIONAL%@
结尾的 OPTIONAL%
所以总而言之,我只想匹配在大括号之间定义的组,只有a-z
无限次。
MyTokenName{%@example%, %@example%} ----- Would match Two groups example1 and example2
MyTokenName{example, example} --- Would match Two groups example1 and example2
我的尝试不起作用。
(?<=[a-zA-Z]+\{[^a-zA-Z@]+?)[a-zA-Z, ]+(?=%?})
任何建议都会很棒。感谢大家提供这么好的论坛。请记住我只是想练习正则表达式。我可以用其他 .Net 方法做到这一点。