[英]Need to extract string from a separator in c#
請給我一個字符串,如RemoteAuthorizationTestScope |開始:En Attente驗證|:001 |:01195 | 21/01/2015
我可以從|中提取字符串 使用此代碼的符號
var userInfo="RemoteAuthorizationTestScope|Start:En Attente Validation|:001|:01195|21/01/2015"
var entries=userInfo.Split('|');
但是,在字符串中還有需要分離的文本“Start:En Attente Validation”,如何實現這一點,以便我可以以這種方式分隔字符串。
RemoteAuthorizationTestScope
Start
En Attente Validation
001
01195
21/01/2015
您可以指定要拆分的多個字符,也可以刪除空條目。 使用String.Split overload
如:
var entries = userInfo.Split(new []{'|', ':'}, StringSplitOptions.RemoveEmptyEntries);
那會給你
RemoteAuthorizationTestScope
Start
En Attente Validation
001
01195
21/01/2015
包括您的額外請求:
“開始:En Attente驗證”如何才能在列字符':'之后只獲取字符串?
您可以使用正則表達式一步完成此操作: \\|(?:[^:]*:)?
var userInfo =
"RemoteAuthorizationTestScope|Start:En Attente Validation|:001|:01195|21/01/2015";
var entries = System.Text.RegularExpressions.Regex.Split(userInfo, "\\|(?:[^:]*:)?");
結果是:
String[]
[
"RemoteAuthorizationTestScope",
"En Attente Validation",
"001",
"01195",
"21/01/2015"
]
工作示例: https : //dotnetfiddle.net/D5ggvH
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.