我想在 JavaScript 中替换所有出现的空白字符(空格、制表符、换行符)。 怎样做?
我试过:
str.replace(/ /gi, "X")
你想要 \s
\s
匹配一个空白 字符,包括空格、制表符、表单 喂,喂。
相当于
[ \f\n\r\t\v\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]
在 火狐和 [ \f\n\r\t\v]在 IE。
[ \f\n\r\t\v]
str = str.replace(/\s/g, "X");
\s是一个涵盖所有空白的元字符。你不需要让它不区分大小写ーー留白没有大小写。
str.replace(/\s/g, "X")
试试这个:
你试过 \s吗?
str.replace(/\s/g, "X");
实际上它已经工作了,但是
试试这个。
将值/s/g 放入字符串变量,如
String a = /\s/g; str = str.replaceAll(a,"X");
如果我们想用一个字符更改所有多个连接的空格,我们也可以使用它:
str.replace(/\s+/g,'X');
在这里可以看到它的实际运作: https://regex101.com/r/d9d53G/1
解释
/\s+/g
\s+
[\r\n\t\f\v ]
不是“基”而是“基”
var fname = "My Family File.jpg" fname = fname.replace(/ /g,"_"); console.log(fname);
给予
"My_Family_File.jpg"
我使用了 underscore.string 中的“ slugify”方法,它非常有效:
Https://github.com/epeli/underscore.string#slugifystring——string
最酷的是你可以直接导入这个方法,不需要导入整个库。
如果你用
str.replace(/\s/g, "");
它替换所有的空格,例如:
var str = "hello my world"; str.replace(/\s/g, "") //the result will be "hellomyworld"
您可以使用函数 trim
trim
let str = ' Hello World ';
alert (str.trim());
Hello World 周围的所有前后空间都将被删除。