除了可能增强的非常简单模式的可读性之外,为什么有人会选择在VB.NET中使用Like运算符而不是正则表达式来进行字符串模式匹配?有什么好处吗?
答案 0 :(得分:3)
可能。如果你想看看Like的实现方式,那么Microsoft.VisualBasic.CompilerServices.LikeOperator
中有很多(全部?),并且可以在#LikeObject
和#LikeString
中看到基本知识。看the documentation,Like
显然使用了全开的正则表达式引擎的非常严格的子集,就像任何Perl兼容的正则表达式引擎一样,有一些繁重的工作可能对于简单而言过于苛刻表达式。
那就是说,在我看来,它归结为风格。如果您认为If (myString Like "a?bb")
更具可读性,惯用性并与代码的其余部分保持一致,那就去吧。在我看来,除了前面提到的理由之外,任何一种方式都是微优化剧院,特别是因为如果你需要,你可以compile regexes。