splitMapJoin是怎么使用的?

来源:5-3 Flutter之Dart常用数据类型(字符串)

慕田峪3546164

2020-11-10

split的衍生方法splitMapJoin是怎么使用的?写了好几个demo还是没有理解这个方法的规则

写回答

1回答

CrazyCodeBoy

2020-11-11

splitMapJoin()主要是用来分割字符串,转换,然后连接字符串,它可以在一条语句中完成3件事:

String splitMapJoin(
    Pattern pattern,
    {String onMatch(Match match), String onNonMatch(String nonMatch)}
);
  • pattern可以是一个String或一个RegExp对象。

  • onMatch(可选):将每个匹配项转换为字符串。

  • onNonMatch(可选):将每个不匹配的部分转换为字符串。

String result = 'devio2020.com'.splitMapJoin(
  RegExp(r'[0-9]+'),
  onMatch: (m) => '_${m.group(0)}_',
  onNonMatch: (n) => '[${n}]');

print(result);
// [devio]_2020_[.com]

result = 'devio2020.com'.splitMapJoin(
  RegExp(r'[0-9]+'),
  onNonMatch: (n) => '[${n}]');

print(result);
// [devio]2020[.com]

result = 'devio2020.com'.splitMapJoin(
  RegExp(r'[0-9]+'),
  onMatch: (m) => '_${m.group(0)}_');

print(result);
// devio_2020_.com


1
2
CrazyCodeBoy
回复
慕田峪3546164
可以这么理解。
2020-11-12
共2条回复

Flutter从入门到进阶 实战携程网App 一网打尽核心技术

解锁Flutter开发新姿势,,系统掌握Flutter开发核心技术。

4788 学习 · 3270 问题

查看课程