【发布时间】:2013-09-05 18:07:34
【问题描述】:
我一直在尝试验证 VB.net 中的一个字符串,该字符串必须包含这三个字母,没有特定的顺序,并且不需要彼此相邻。 ABC
我可以使用 LINQ 轻松做到这一点
MessageBox.Show(("ABC").All(Function(n) ("AAAABBBBBCCCC").Contains(n)).ToString)
但是,在 Google 和 SO 搜索了一个多星期后,我完全被难住了。我最接近的模式是".*[A|B|C]+.*[A|B|C]+.*[A|B|C]+.*",但AAA 也会返回true。我知道我可以在尝试一周后使用其他方法来做到这一点我真的很想知道是否可以使用 One 正则表达式。
【问题讨论】:
-
您需要正则表达式有什么原因吗?它总是只有一组 3 个字符吗?
-
我正在尝试学习如何使用正则表达式。为了学习一个人必须为他/她自己设定任务。感谢您抽出宝贵时间回复:)
-
您可以尝试不同的问题来学习正则表达式。虽然可以解决这个问题,正如 Jerry 所展示的那样,但这对于正则表达式来说并不是一个特别好的问题(许多字符串库甚至提供了
ContainsAll方法)。