javascript - Javascript将除第一个单词之外的所有字符替换为下划线

标签 javascript regex

我想用下划线替换字符串中除第一个单词之外的所有字符,但我的代码用下划线替换所有字符。

预期结果:你好 ___ __ _________

var regex = /[a-z0-9,.':!?"]/gi;
var str = "Hello I'm an astronaut";
console.log(str.replace(regex, "_"));

最佳答案

我会在这里使用拆分和正则表达式方法:

var str = "Hello I'm an astronaut";
var first = str.substr(0, str.indexOf(' '));                      // finds first word
var rest = str.substr(str.indexOf(' ') + 1).replace(/\S/g, "_");  // find other words
console.log(first + " " + rest);

关于javascript - Javascript将除第一个单词之外的所有字符替换为下划线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67681168/

相关文章:

javascript - 正则表达式适用于 PHP 但不适用于 Javascript

java - 替换Java字符串中特定长度的子字符串

javascript - 将所有日期/日期时间元素转换为本地时区

javascript - 当屏幕宽度改变时,CSS 属性不适用。同时使用 css 和 jQuery

javascript - 与 Jquery 延迟作斗争

python - 返回下一行匹配的搜索字符串

Java 分割字符串未按预期工作

javascript - 应用于多个元素时仅触发一次事件

javascript - 如何创建一个由 onclick 触发的简单变量交流发电机?

python - Django slug, `\w` 未检测到韩语 + 中文