我想使用Dart将数字单词(如1、2、3等)转换为int(如1、2、3等)
答案 0 :(得分:0)
您必须依靠机器学习库或将每个字符串与相应的数字配对。
int convertStrToNum(String str) {
var number = <String, num>{'one': 1, ...};
return number[str];
}
答案 1 :(得分:0)
int convStrToInt(String str) {
var list = [
'zero',
'one',
'two',
'three',
'four',
'five',
'six',
'seven',
'eight',
'nine',
'ten',
];
return list.indexOf(str);
}
答案 2 :(得分:-1)
当然,机器学习可能是最快,最好的方法,但是我不能真正帮助您。因此,这是一个假设“数字字”遵循某种格式(直到10)的实现。您可以实现Regexp将其扩展到999,这将使您真正棘手:
int convStrToNum(String str) {
var oneten = <String, num> {
'one': 1,
'two': 2,
'three': 3,
'four': 4,
'five': 5,
'six': 6,
'seven': 7,
'eight': 8,
'nine': 9,
'ten': 10,
}
if (oneten.keys.contains(str)) {
return oneten[str];
}
}