【发布时间】:2017-02-09 07:23:07
【问题描述】:
我有两个字符串供比较
String Str1 = "A C";
String Str2 = "A B C";
Str2.Contains(Str1); //It will return False ,Contains append % at Start and End of string
//Replace space with %
Str1 = "%A%C%";
Str2 = "%A%B%C%";
Str2.Contains(Str1); //Want it to return True ,
我们确实有 Contains,StartsWith,EndsWith 比较方法,但我的要求是,如果我们比较 str2 和 str3 ,它应该返回 True ,因为它位于 Str2。
我们可以在 C# 中实现这样的行为吗?我已经在 SQL 中做到了这一点,但在 C# 中没有得到一些有用的东西。任何 regex 等?
【问题讨论】:
-
是的,您可以在 .NET 中使用正则表达式 - 您尝试过吗?如果是这样,请展示您尝试过的内容...
-
Str2 = "A B C D"和Str1 = "A C";的预期结果是什么 -
@JonSkeet 我尝试了 Contains 方法,该方法已经共享。但是在使用 % 符号后,它会将其视为字符串的一部分,而不是通配符。
-
是的,
Contains不使用正则表达式——我不知道你为什么会这么认为。您是否研究过在 .NET 中使用正则表达式? (Stack Overflow 应该是在做了所有可以做的研究之后的最后手段,而不是在你尝试的第一件事不起作用之后的第一个停靠港。)