javascript - 如何用 _ 替换连续的非字母数字值
问题描述
我有一个字符串
aaa:::sss vvv ggg 4 SF 20 @text box2323
我想用单个下划线替换所有非字母数字字符。像这样 :
aaa_sss_vvv_ggg_4_SF_20_text_box2323
到目前为止我尝试的是:
let nameRegex = new RegExp("[^a-zA-Z0-9_]","g");
let originalName="aaa:::sss vvv ggg 4 SF 20 @text box2323";
let finalName= originalName.toLowerCase().replace(nameRegex, "_");
console.log(finalName);
但我得到的是:
aaa___sss_vvv_ggg_4_SF_20__text_box2323
如您所见,我在第一次替换时得到 3 个下划线。我想在这里单身。
任何帮助都将受到重视。