簡體   English   中英

如何提取字符串的某些部分?

[英]How to extract some part of a string?

我有一個字符串=“ C:\\ Users \\ Desktop \\ bin \\ data \\ so on”

我只想提取“ C:\\ Users \\ Desktop \\”部分。.什么是最簡單的獲取結果的方法?

string s = @"C:\Users\Desktop\bin\data\so on";
string result = String.Join("\\",s.Split('\\').Take(3));

結果 C:\\ Users \\ Desktop

考慮到存在兩種可能的目錄分隔符 (您的輸入看起來像一個路徑):

  String s = "C:\Users\Desktop\bin\data\so on";

  String result = String.Join(Path.DirectorySeparatorChar.ToString(), 
                              s.Split(Path.DirectorySeparatorChar, 
                                      Path.AltDirectorySeparatorChar).Take(3));

或者,如果要繼續操作直到找到"/bin""\\bin" ,則應將Take更改為TakeWhile

  String result = String.Join(Path.DirectorySeparatorChar.ToString(), 
                          s.Split(Path.DirectorySeparatorChar, 
                                  Path.AltDirectorySeparatorChar).TakeWhile(
                                    x => !String.Equals(x, "bin", StringComparison.OrdinalIgnoreCase)));

對於諸如"C:\\Windows\\MyBins\\Bin\\SomeStaff"這樣的輸入,將天真靈魂作為Substring(@"\\bin")可能很危險

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM