You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter/Dart中如何格式化含@[名称](ID)格式的字符串

解决方案

可以使用Dart的正则表达式匹配替换功能,精准移除@[名称](UUID)格式中的UUID部分,只保留名称内容。具体实现如下:

  1. 匹配规则:用正则表达式r'@\[([^\]]+)\]\([^)]+\)'定位目标格式,其中([^\]]+)会捕获方括号内的名称文本。
  2. 替换操作:通过replaceAllMapped方法将匹配到的内容替换为捕获到的名称。

代码示例

void main() {
  String originalStr = '''Hello @[Nguyễn Anh Tài](8a66c420-8b21-4ebd-adfc-2ede6128d143) 
@[Hồng Anh](272276cd-e9ca-4463-b5b6-b254b6770be7) 123 
@[Lê Đình Duy](bbc78074-722f-46d5-a29c-dff304d4ef8a) 456 
@[Trần Thị Lưu](15c5f175-0205-42a6-b8a0-6b78cf89c5f3)''';
  
  RegExp mentionRegex = RegExp(r'@\[([^\]]+)\]\([^)]+\)');
  
  String result = originalStr.replaceAllMapped(mentionRegex, (match) {
    return match.group(1)!;
  });
  
  print(result);
}

输出结果

Hello Nguyễn Anh Tài
Hồng Anh 123 
Lê Đình Duy 456 
Trần Thị Lưu

内容的提问来源于stack exchange,提问作者nBinh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 12:12:08