如何高效的替换大量文本里的特定文本

有这样一个场景,需要将一个有20w字符的文本里的某些文本用正则匹配出来然后替换。

但是这个过程特别的卡,在mac下用chrome浏览器会卡个将近20s,如果多执行几次这样的任务,耗时自然比较大。

想问有没有比较快的方法来做这个操作?

阅读 2.5k
2 个回答

正则全局替换还慢就没办法了,只能改策略,比如你其实不一定要一次性全部替换完,那可以等要用到某一部分的时候再单独替换那一部分。或者读取的时候读到多个buffer中,再开worker多线程替换。进度条可以丢一个,让用户知道你在处理

20w字符不需要一次性展示出来,分段进行处理。保证页面初次渲染加载的满足可视范围就行。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题