C#比较跨越多行的两个字符串

时间:2017-07-13 09:10:15

标签: c# string-comparison multilinestring

我正在尝试比较跨越多行的2个字符串。

示例:

string myStr1= "Microsoft’s approach to IoT <br>
Pham Tien Dung – Developer Evangelist Microsoft Vietnam"

string myStr2 = "Microsoft’s approach to IoT <br>
Pham Tien Dung – Developer Evangelist Microsoft Vietnam"

的方法:

  1. 尝试使用逐字字符串,如下所示。

    string myStr3 = @myStr1
    string myStr4 = @myStr2 
    
  2. 并继续进行字符串比较并收到错误。

    2.用正则表达式(删除空格,换行)。仍然收到错误。

    请帮我解决这个问题。

2 个答案:

答案 0 :(得分:1)

这应该有用,请注意@所在的位置:

string myStr1= @"Microsoft’s approach to IoT <br>
Pham Tien Dung – Developer Evangelist Microsoft Vietnam";

string myStr2 = @"Microsoft’s approach to IoT <br>
Pham Tien Dung – Developer Evangelist Microsoft Vietnam";

bool areStringsSame = myStr1 == myStr2;
//or, like this:
bool stringsSame = myStr1.Equals(myStr2);

答案 1 :(得分:0)

您应该应用Equal方法,您的代码可能如下所示:

string myStr1= @"Microsoft’s approach to IoT <br>
Pham Tien Dung – Developer Evangelist Microsoft Vietnam"

string myStr2 = @"Microsoft’s approach to IoT <br>
Pham Tien Dung – Developer Evangelist Microsoft Vietnam"

if (myStr1.Equals(myStr2 )) // Yes

如果你想知道为什么我在字符串=&gt;之前输入@解释如下!

它将字符串标记为逐字字符串文字 - 字符串中通常被解释为转义序列的任何内容都将被忽略。

例如"C:\\Users\\John" is the same as @"C:\Users\John"