[英]C# regex get string beetween numbers
我有一個簡單的字符串,看起來像
string text = "1\t2:3|5"
所以我的目標是獲得數字之間的字符,例如:
string[] result = {"\t", ":", "|"}
我試圖通過先獲取數字來解決這個問題
Regex.Matches(text , "(-?[0-9]+)").OfType<Match>().Select(m => int.Parse(m.Value)).ToArray();
然后使用這個正則表達式模式
/[^ \w]/g
好吧,我得到了符號,但是“\t”被拆分為“”並且沒有“t”,如何正則表達式呢?
您可以使用Regex
或String.Split
- 結果相同
char[] separators = new char[] { '1', '2', '3', '4', '5', '6', '7', '8', '9', '0' };
var splitResult = text.Split(separators, StringSplitOptions.RemoveEmptyEntries);
var matchesResult = Regex.Matches(text, @"(?<=\d)\D+(?=\d)").Select(w => w.Value).ToArray();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.