【发布时间】:2019-04-24 14:21:48
【问题描述】:
给出以下字符串(一行):
a_Type_of_Data 0.847481:611x569+446+1200,0.515323:597x762+448+1101,0.587354:597x558+488+1207
我想这样拆分 [611, 559, 446 ,1200], [597, 762, 448, 1101], [597, 558, 488, 1207] 所以基本上要得到每个“:”和“,”之间的4个数字,而不考虑数字之间的字符。
我已经尝试在“,”上拆分字符串,但是我仍然遇到“:”前面的数字的问题。或者全部一起使用string result = Regex.Replace(input, @"[^\d]", "");
有没有办法用正则表达式来做到这一点? 提前致谢。
【问题讨论】:
-
将
","传递给split对我来说似乎是正确的方法。然后将正则表达式"([\\d.]*\\d):(\\d+)x(\\d+)\\+(\\d+)\\+(\\d+)"应用于 split 返回的数组的每个元素。 -
转义序列无效