jquery/javascript如何消除空白(replace()不起作用)

jquery/javascript如何消除空白(replace()不起作用),javascript,jquery,replace,substring,whitespace,Javascript,Jquery,Replace,Substring,Whitespace,大家好 我的数据库中有一个字符串: var theString = "LNDSH - LONDON SHOPS"; 我需要从中得到两个变量 一个在-,前面有代码,另一个在-,后面有句子 为此,我要: var sentence = $.trim(theString.substring((theString.indexOf('-')+1),theString.length)); var code = $.trim(theString.substring(0, theString.indexO

大家好

我的数据库中有一个字符串:

var theString = "LNDSH   - LONDON SHOPS";
我需要从中得到两个变量

一个在-,前面有代码,另一个在-,后面有句子

为此,我要:

var sentence = $.trim(theString.substring((theString.indexOf('-')+1),theString.length)); 
var code = $.trim(theString.substring(0, theString.indexOf('-')));
var语句是可以的,但是我不能去掉代码变量中-前面的空格

我真的需要清除那些空间

请注意,在var语句中,我使用+1,因为它总是在句子和-,之间有一个空格

但是在代码的情况下:我不知道代码的长度,也不知道在-

我试过:

code.replaceAll("\\s+", " "); 
但这并没有在我的页面中显示任何内容(也没有javascript错误)

我正在使用jquery-1.5.1.min和jquery-ui-1.8.14.custom.min

非常感谢

试试这个:

variable.replace(/\s/g,'');
编辑:上面的将不会分隔字符串,它只会删除空格

要分离字符串,可以执行以下操作:

var seperate = theString.split("-", 2);
var LNDSH = seperate[0];
var LONDON_SHOPS = seperate[1];
试试这个:

variable.replace(/\s/g,'');
编辑:上面的将不会分隔字符串,它只会删除空格

要分离字符串,可以执行以下操作:

var seperate = theString.split("-", 2);
var LNDSH = seperate[0];
var LONDON_SHOPS = seperate[1];

您可以将
split
与正则表达式一起使用:

var values = "LNDSH   - LONDON SHOPS".split(/\s*-\s*/);

console.log(values[0]);  // "LNDSH"
console.log(values[1]);  // "LONDON SHOPS"

您可以将
split
与正则表达式一起使用:

var values = "LNDSH   - LONDON SHOPS".split(/\s*-\s*/);

console.log(values[0]);  // "LNDSH"
console.log(values[1]);  // "LONDON SHOPS"

有点离题了,但为什么要使用如此旧版本的jQuery?“也没有javascript错误”-你确定吗?JS没有
.replaceAll()
方法。有点离题,但为什么要使用这么旧的jQuery版本?“也没有javascript错误”-你确定吗?JS没有
.replaceAll()
方法。为什么会有否决票+回答得好$replaceAll用于afaik元素。可能值得使用
split(“-”,2)
来确保只返回两个字符串。@Jon该喝更多咖啡了!!谢谢为什么会有反对票+回答得好$replaceAll用于afaik元素。可能值得使用
split(“-”,2)
来确保只返回两个字符串。@Jon该喝更多咖啡了!!谢谢请注意,JS的
.trim()
在IENote中不起作用。请注意,JS的
.trim()
在IEE中不起作用可能值得使用
拆分(/\s*-\s*/,2)
来确保只返回两个字符串。@Jon可以这样做。这取决于要求。@Jon-如果另一个代码只使用前两个数组项,则没有多大区别。@VisioN OP在其代码中指定句子应该包含从“-”的第一个实例到字符串末尾的内容,可能值得使用
split(/\s*-\s*/,2)
以确保只返回两个字符串。@Jon可以这样做。这取决于要求。@Jon-如果其他代码只使用前两个数组项,则没有多大区别。@VisioN OP在其代码中指定句子应包含从“-”的第一个实例到字符串末尾的内容