Skip to main content
 首页 » 编程设计

c#之C#中的正则表达式解析为双数组

2024年01月25日32落叶无声

我不太擅长正则表达式。 我有

string rgba = "[0.123,0.223,0.2,1]"; 

将其转换为 double[] 的最佳方法是什么?

请您参考如下方法:

rgba.Replace("]", String.Empty) 
    .Replace("[", String.Empty) 
    .Split(',') 
    .Select(double.Parse) 
    .ToArray(); 

或者如果您知道它将始终以 [ 开头并以 ] 结尾

rgba.Substring(1, rgba.Length - 2) 
    .Split(',') 
    .Select(double.Parse) 
    .ToArray(); 

如果你不喜欢 LINQ

Array.ConvertAll(rgba.Substring(1, rgba.Length - 2).Split(','), double.Parse); 

正则表达式的使用成本很高,在这种情况下我不推荐它。