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

JavaScript实现句子空格规整与指定整词替换的技术问题

问题排查与解决

你的代码存在两个核心问题,导致功能未达预期:

1. replace方法不会修改原字符串

JavaScript里的String.replace()是返回新字符串,不会直接修改原变量的值,必须将返回结果重新赋值给sentence才能生效。

2. 规整空白的正则不符合要求

你要求用\s匹配所有空白字符,但原正则/ +/g只能匹配连续空格,无法覆盖制表符、换行符等其他空白类型,应改为/\s+/g。

修正后的代码

var sentence = "This      sentence       has       too   many    spaces."

function fixSentence(){
  // 规整所有连续空白为单个空格
  sentence = sentence.replace(/\s+/g, ' ');
  // 替换独立的"has"为"had",\b确保匹配完整单词,gi支持全局替换+忽略大小写(不需要可去掉i)
  sentence = sentence.replace(/\bhas\b/gi, "had");

  console.log(sentence);
}

fixSentence();

执行结果

输出内容为:This sentence had too many spaces.,完全满足你提出的两个功能要求。

内容的提问来源于stack exchange,提问作者H. Ach

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 17:35:06