chineseNumber property

int get chineseNumber

将中文数字字符串转换为整数值

转换步骤:

  1. 按万/千/百/十分割字符串
  2. 对各部分末尾字符进行数值转换
  3. 组合各部分数值计算结果

调试信息通过print输出分割中间结果

Implementation

int get chineseNumber {
  (String?, String) wp = this.apart('万');
  print('wp -> $wp');
  String w = wp.$1 ?? '零';
  (String?, String) qp = wp.$2.apart('千');
  print('qp -> $qp');
  String q = qp.$1 ?? '零';
  (String?, String) bp = qp.$2.apart('百');
  print('bp -> $bp');
  String b = bp.$1 ?? '零';
  (String?, String) sp = bp.$2.apart('十');
  print('sp -> $sp');
  String s = sp.$1 ?? '零';
  String g = sp.$2;
  return w._singleNumber * 10000 +
      q._singleNumber * 1000 +
      b._singleNumber * 100 +
      s._singleNumber * 10 +
      g._singleNumber;
}