为了账号安全,请及时绑定邮箱和手机立即绑定

获取前 N 个单词的子串

获取前 N 个单词的子串

慕码人8056858 2021-08-20 16:59:07
我有基于 unicode 的文本,我需要获取前 N 个(假设为 500-1000-1500)个单词的符号数我需要保留所有符号(所以如果字符串在哪里"a   b"结果应该是 5)我的想法是使用一些正则表达式匹配前 N 个单词,然后获取匹配结果的长度(符号数)。也许像text.match(/([^\s]+\s+){500}/)但是当涉及到标点符号时它很糟糕事实上,我提出了这个想法。大家怎么看?text.match(/(\w+\s*[^\s\w]*\s+){5}/)
查看完整描述

2 回答

?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

这种事情对你有用吗?

const words = text.split(' ').slice(0, 500)
const symbolCount = words.reduce((acc, curr) => acc + curr.length + 1, -1)

在空格处拆分文本,然后循环遍历并累积字符数。


查看完整回答
反对 回复 2021-08-20
?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

尝试使其在运行匹配时字符串只有单词

text
  .replace(/[^a-z0-9 ]/gi,'')
  .match(/([^\s]+\s+){500}/)


查看完整回答
反对 回复 2021-08-20
  • 2 回答
  • 0 关注
  • 125 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信