这是与此处相同的问题:
但是对于 Dart 而不是 python。我的目标(如在另一个问题中)是采用如下字符串:
String stringRep = '[[123],[122],[411]]';
Run Code Online (Sandbox Code Playgroud)
并将其转换为列表列表。我可以看到我可以使用上面引用的答案中推荐的方法之一来实现这一点,即:
str = "[[0,0,0],[0,0,1],[1,1,0]]"
strs = str.replace('[','').split('],')
lists = [map(int, s.replace(']','').split(',')) for s in strs]
Run Code Online (Sandbox Code Playgroud)
但是想知道 Dart 中是否有更好的方法,但很难在网上找到任何方法?
Gün*_*uer 11
您可以使用 JSON 解码器
import 'dart:convert';
...
var lists = json.decode('[[123],[122],[411]]');
Run Code Online (Sandbox Code Playgroud)
更新
final regExp = new RegExp(r'(?:\[)?(\[[^\]]*?\](?:,?))(?:\])?');
final input = '[[sometext],[122],[411]]';
final result = regExp.allMatches(input).map((m) => m.group(1))
.map((String item) => item.replaceAll(new RegExp(r'[\[\],]'), ''))
.map((m) => [m])
.toList();
print(result);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10219 次 |
| 最近记录: |