我想查找一個字符串中有不同字符,而不是另一個字符串。假設firstString包含ABC並且secondString包含BC 現在輸出op1應該包含「在firstString中明顯存在但不在secondString中的字符」,即A和op2應該包含「字符明顯存在於secondString中但不存在於firstString中」即在這種情況下爲空。 如果firstString是「SBG」 和secondString是「班加羅爾」 OP1應該是「S」 OP2應該是「ANLORE」如何找到一個字符串中存在的字符,而不是另一個字符在C#中?
0
A
回答
4
這可以容易地與在所述的LINQ方法Enumerable.Except()
完成由於String也實現IEnumerable<char>
。
var str1 = "ABC";
var str2 = "BC";
var str3 = new string(str1.Except(str2).ToArray());
var str4 = new string(str2.Except(str1).ToArray());
var str5 = "SBG";
var str6 = "BANGALORE";
var str7 = new string(str5.Except(str6).ToArray());
var str8 = new string(str6.Except(str5).ToArray());
+5
'String.Join'是不必要的,字符串有一個構造函數,它需要'char []'參數。 –
+1
是的,我認爲它有它,但我不確定,也沒有編譯器在手來測試它。更新了代碼。 –
2
既然你想要的不同字符,你可以使用Except
例如
using System.Linq;
"BANGALORE".Except("SBG")
1
添加到建議卡爾 - 約翰·舍格倫已使用Enumerable.Except給,你可以很容易包裝成一個擴展方法這一點。
public static class StringExtensions {
public static string DistinctFrom(this string one, string two) {
return new string(one.Except(two).ToArray());
}
}
//Usage. Given 'ABC' and 'BC' results 'A'
var distinctString = str1.DistrinctFrom(str2);
如果您經常使用它,非常方便,並且可以在需要時在一個位置更改邏輯。
相關問題
- 1. 在另一個字符串中查找一個字符串的字符串
- 2. 如何找到在C中第一個字符的字符串++
- 3. C++:查找字符串中的一個字符,然後找到另一個字符前一個字符
- 4. 字符在C另一個字符串
- 5. 如何拆分一個字符串並在另一個字符串中找到一個字符串?
- 6. 如何找到一個字符串是否包含在另一個字符串
- 7. 找到一個字符串,如果它存在於另一個字符串
- 8. 如何在另一個字符串中找到字符串的一部分?
- 9. 在C中找到一個字符串
- 10. PHP:刪除在另一個字符串中找到的字符串字符
- 11. 一個字符串查找是否有另一個字符串
- 12. 如何找到一個字符串出現在另一個字符串
- 13. C - 從另一個字符串中減去一個字符串
- 14. 將一個字符串到另一個字符串中的Java
- 15. 如何檢查一個字符串中的每個單詞是否在另一個字符串中找到?
- 16. 確定一個字符串是不是另一個字符串
- 17. 在字符串中找到一個數組中的字符串
- 18. 檢查一個字符串中的所有字符是否存在於r中的另一個字符串中
- 19. 在另一個字符串中查找字符串
- 20. 找到一個字符串是否是SML中另一個字符串的子字符串NJ
- 21. C#得到另一個字符串中的字符串
- 22. 如何在另一個字符串中找到沒有嵌入另一個字詞的字符串?
- 23. 如何串連從字符串中特定的字符到另一個在c
- 24. Rails的:找到一個字符串開始,而在另一個
- 25. 找到另一個字符串內的多個字符串
- 26. 如何在另一個字符串中搜索字符串
- 27. 如何在另一個字符串中插入字符串?
- 28. 如何找到一個字符串中的字符串
- 29. JavaScript程序找到一個字符串中的字符,但沒有在另一個字符串中
- 30. 如何檢查字符串是否存在於另一個字符串中
那麼,你有什麼嘗試編碼? –