$("#topNav" + $("#breadCrumb2nd").text().replace(" ", "")).addClass("current");
这是我的代码片段。我想在获得另一个ID的文本属性后向ID添加一个类。这样做的问题是,ID持有我需要的文本,包含字母之间的空白。
我想把空白去掉。我已经尝试了TRIM()和REPLACE(),但这只是部分工作。REPLACE()只删除第一个空格。
$("#topNav" + $("#breadCrumb2nd").text().replace(" ", "")).addClass("current");
这是我的代码片段。我想在获得另一个ID的文本属性后向ID添加一个类。这样做的问题是,ID持有我需要的文本,包含字母之间的空白。
我想把空白去掉。我已经尝试了TRIM()和REPLACE(),但这只是部分工作。REPLACE()只删除第一个空格。
.replace(/\s+/, "")
将只替换第一个空白,这包括空格,制表符和新行。
要替换字符串中的所有空白,您需要使用全局模式
.replace(/\s/g, "")
你必须告诉replace()来重复正则表达式:
.replace(/ /g,'')
g字符使它成为一个“全局”匹配,这意味着它在整个字符串中重复搜索。阅读这个,以及JavaScript中可用的其他RegEx修饰符。
如果你想匹配所有的空格,而不仅仅是字面空格字符,使用\s代替:
.replace(/\s/g,'')
如果你使用的是最新版本的JavaScript,你也可以使用.replaceAll,但对于你的特定用例,没有任何理由这样做,因为捕获所有空白需要一个正则表达式,而当使用带有.replaceAll的正则表达式时,它必须是全局的,所以你最终只需要额外的输入:
.replaceAll(/\s/g,'')
使用String.prototype.replace与regex,正如在其他答案中提到的,当然是最好的解决方案。
但是,只是为了好玩,你也可以使用String.prototype.split和String.prototype.join来删除文本中的所有空白:
Const text = ' a b c d f g '; const newText = text.split(/\s/).join("); console.log (newText);//打印abcdefg
正则表达式用于删除空白
\s+
var str = “Visit Microsoft!”; var res = str.replace(/\s+/g, “”); console.log(res);
or
[ ]+
var str = “Visit Microsoft!”; var res = str.replace(/[ ]+/g, “”); console.log(res);
删除字符串开头的所有空白
^[ ]+
var str = “Visit Microsoft!”; var res = str.replace(/^[ ]+/g, “”); console.log(res);
删除字符串末尾的所有空白
[ ]+$
var str=“Visit Microsoft! "; var res = str.replace(/[ ]+$/g, “”); console.log(res);
var mystring="fg gg";
console.log(mystring.replaceAll(' ',''))
使用替换(/ \ s + / g”),
例如:
const stripped = ' My String With A Lot Whitespace '.replace(/\s+/g, '')// 'MyStringWithALotWhitespace'
使用.replace(/\s+/g, ")可以;
例子:
this.slug = removeAccent(this.slug).replace(/\s+/g,'');
现在你可以使用"replaceAll":
console.log(' a b c d e f g '.replaceAll(' ',''));
将打印:
abcdefg
但并不是在所有可能的浏览器中都能运行:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replaceAll
function RemoveAllSpaces(ToRemove)
{
let str = new String(ToRemove);
while(str.includes(" "))
{
str = str.replace(" ", "");
}
return str;
}
** 100%工作
使用replace(/ +/g,'_'): let text = "我爱你" 文本=文本。取代(/ + / g , '_') // 替换为下划线(“_”) console.log(text) //我爱你
let str = 'a big fat hen clock mouse '
console.log(str.split(' ').join(''))
// abigfathenclockmouse
我不明白当我们可以简单地使用replaceAll时,为什么我们需要在这里使用regex
let result = string.replaceAll(' ', '')
结果将存储没有空格的字符串
我们也可以用[^A-Za-z]和g标记来移除文本中的所有空格。否定或互补或^。显示括号内的每个字符或字符范围。about g表示全局搜索。
let str = "D S@ D2m4a r k 23"; //我们只允许A-Za-z范围内的字符 str = str.replace(/[^A-Za-z]/g,"");//输出:—DSDmark . / console.log (str) javascript -删除文本中的所有空白-堆栈溢出