【发布时间】:2013-11-05 20:35:56
【问题描述】:
你好,堆栈溢出。正如我在上一篇文章中提到的,我正在努力提高正则表达式的水平。今晚我正在浏览我的书籍章节,并决定看看我是否可以,如果可能的话,创建多个组。我完全知道正则表达式并不是所有这一切的答案,这纯粹是为了让我学习。我正在使用 VB.net
示例输入:
MyTokenName{%@example1%, %@example2%}
MyTokenName{example1, example2}
现在这是一个由我自己完成的输出以供测试。这个表达式的一致因子是Name{ } 总会有一个名字只由a-z 组成。大括号内。分隔两组的 MAIN 分隔符是 , 在组开始之前会有一个 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 方法做到这一点。
【问题讨论】:
-
总是只有2组吗?
-
嗯,这只是我在练习,所以我会说是的,总会有两组。