gpt4 book ai didi

dart - 在dart中,如何从模板和字符串获取字段映射?

转载 作者:行者123 更新时间:2023-12-03 03:26:33 26 4
gpt4 key购买 nike

var template = '/test/:key1/tester/:key2';
var filledIn = '/test/12/tester/3';

如何获得上面给定输入的像这样的 map ?
[
key1: 12,
key2: 3
]

最佳答案

这是一个更好的解决方案,可提供您要求的确切格式。

void main() {
final template = Template('/test/:key1/tester/:key2');
print(template.parse('/test/12/tester/3')); // {key1: 12, key2: 3}
}

class Template {
Template(this.source);
final String source;
List<String> _parts;
Iterable<int> _params;

List<String> get parts => _parts ??= source.split('/');
Iterable<int> get params => _params ??= parts
.where((part) => part.startsWith(':'))
.map((param) => parts.indexOf(param));

Map<String, String> parse(String string) {
final p = string.split('/');
return Map.fromEntries(
params.map((index) => MapEntry(parts[index].substring(1), p[index])));
}
}

关于dart - 在dart中,如何从模板和字符串获取字段映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52769691/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com