gpt4 book ai didi

c# - 在 C# 中使用正则表达式匹配 a^n b^n c^n (例如 “aaabbbccc” )

转载 作者:可可西里 更新时间:2023-11-01 08:23:51 24 4
gpt4 key购买 nike

您可以轻松地使用正则表达式来验证常规语言。我的问题是你能用它来验证上下文相关的语言吗?层次结构中的现代正则表达式有多强大?

您将如何创建一个正则表达式来检查匹配 a^n b^n c^n 的字符串?

以下情况应该匹配:

abc
aabbcc
aaabbbccc

以下情况不应匹配:

abbc
aabbc
aabbbccc

最佳答案

.NET 提供 balancing groups你应该能够使用它来做到这一点;像这样的东西:

^(?<n>(?<o>a))*(?<-n>b)*(?<-o>c)*(?(n)(?!))(?(o)(?!))$

为每个a递增no,为每个b递减n > 然后是每个 co,如果任一计数器仍然大于零,则匹配失败 ((?!))。

关于c# - 在 C# 中使用正则表达式匹配 a^n b^n c^n (例如 “aaabbbccc” ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29834487/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com