.net 获取两个字符串中相同的字符
时间: 2023-09-19 15:06:04 浏览: 82
### 回答1:
.NET 中可以使用 Linq 的 Intersect 方法来获取两个字符串中相同的字符。
例如,下面的代码可以获取字符串 "abc" 和 "cde" 中相同的字符:
```
using System.Linq;
string str1 = "abc";
string str2 = "cde";
var commonChars = str1.Intersect(str2);
foreach (var c in commonChars)
{
Console.WriteLine(c);
}
```
运行上面的代码会输出单个字符 "c"。
如果你想获取两个字符串中所有不同的字符,可以使用 Except 方法。
### 回答2:
可以使用以下的步骤来获取两个字符串中相同的字符。
1. 定义两个字符串分别为str1和str2。
2. 使用for循环遍历str1中的每一个字符,将当前字符存储在一个变量char1中。
3. 使用另一个for循环遍历str2中的每一个字符,将当前字符存储在一个变量char2中。
4. 在循环中使用if语句来判断char1和char2是否相等。
5. 如果相等,则表示找到了一个相同的字符,将char1添加到一个结果字符串result中。
6. 重复步骤2到5直到遍历完str1和str2中的所有字符。
7. 返回结果字符串result。
以下是一个示例代码:
```csharp
string GetCommonCharacters(string str1, string str2)
{
string result = "";
for (int i = 0; i < str1.Length; i++)
{
char char1 = str1[i];
for (int j = 0; j < str2.Length; j++)
{
char char2 = str2[j];
if (char1 == char2)
{
result += char1;
break;
}
}
}
return result;
}
string str1 = "hello";
string str2 = "world";
string commonChars = GetCommonCharacters(str1, str2);
Console.WriteLine(commonChars);
```
在上述示例代码中,我们定义了一个GetCommonCharacters函数来获取两个字符串中相同的字符。在我们的示例中,str1包含字符"h"、"e"、"l"、"l"、"o",str2包含字符"w"、"o"、"r"、"l"、"d"。因此,我们通过运行上述代码会获取到结果字符串"lo",这是两个字符串中相同的字符。
### 回答3:
在.NET中,可以使用以下方法获取两个字符串中相同的字符:
1. 使用循环遍历两个字符串的每个字符,然后逐个比较它们是否相同。
```csharp
string str1 = "abcd";
string str2 = "cdef";
string result = "";
foreach (char c1 in str1)
{
foreach (char c2 in str2)
{
if (c1 == c2)
{
result += c1;
break;
}
}
}
Console.WriteLine("相同的字符为:" + result);
```
输出结果为:"c"
2. 使用LINQ查询来获取两个字符串的交集。
```csharp
string str1 = "abcd";
string str2 = "cdef";
string commonChars = new String(str1.Intersect(str2).ToArray());
Console.WriteLine("相同的字符为:" + commonChars);
```
输出结果为:"c"
以上两种方法都可以实现获取两个字符串中相同的字符,选择使用哪一种取决于个人的习惯和具体的应用场景。