Vis*_*lXZ 3 javascript regex string replace
非常非常初级,如果不合适就道歉.
我试图用破折号替换字符串中的所有字母,如果它只有一个字符,我的代码可以工作,但是不能有多个字符.我尝试了for循环,但是也没有用.我一直在读其他线程,比如: 其他线程,但无法弄清楚我做错了什么,而且我已经读了一段时间了.任何人都可以帮我吗?
到目前为止这是我的代码:
function replaceLettersWithDashes(str) {
/* This function will receive a string with a mix of characters. It should return the string with all letters replaced by dashes ('-').
For example 'You like cake' should return '--- ---- ----', and 'Tree 4, 6, 8' should return '---- 4, 6, 8'.
*/
return str.replace(/^[a-zA-Z]+$/g , '-');
}
Run Code Online (Sandbox Code Playgroud)
提前致谢.
您可以搜索单个字母并将其替换为此正则表达式,该表达式会查找一个字母并用短划线替换每个字母.这些标志'g'和'i'对全球的搜索和区分大小写的搜索.
/[a-z]/gi
Run Code Online (Sandbox Code Playgroud)
如果您使用+或*作为量词,您将获得以下所有字母并将其替换为单个短划线,这是不需要的.
function replaceLettersWithDashes(str) {
return str.replace(/[a-z]/gi , '-');
}
console.log(replaceLettersWithDashes('You like cake'));
console.log(replaceLettersWithDashes('Tree 4, 6, 8'));Run Code Online (Sandbox Code Playgroud)