我试图在删除部分字符串之前修剪字符串,但是字符串中的空格还有一些东西。
我试图修剪的字符串是
200 KristianMedK fisk {dropdownbegin} Ikke valgt fisk fugl dinosaur kristian {dropdownend} Ikke valgt {dropdownbegin} Ikke valgt KristianMedK Laks TunMedT lasse {dropdownend}
该字符串是从tablesorter jquery库中元素的.text()方法返回的。 我已经通过
从字符串中过滤掉了一堆↵字符mystring = mystring.replace(/\n/g, "")
使用
mystring= mystring.replace(" ","")
也没有任何区别。
我怎样才能找出哪些otoher特殊字符隐藏在与javascript混乱的字符串中?
我的最终目标是删除{dropdownbegin}和{dropdownend}之间的内容,但是当获取indexof时我得到的子字符串是错误的并包含{dropdownend}之后的一些文本
var index1 = text.indexOf("{dropdownbegin}");
var index2 = text.indexOf("{dropdownend}");
var substr = text.substr(index1, index2);
text = text.replace(substr, "");
上面的代码给出了子串
{dropdownbegin} Ikke valgt fisk fugl dinosaur kristian {dropdownend} Ikke valg
由于我不知道的原因。
编辑修剪问题很快就解决了,因为我未能正确搜索现有问题。
答案 0 :(得分:1)
尝试mystring.replace(/\s+/g, ' ');
和$.trim()
正如Pavel和Arun P在评论中指出的那样,这可能是一个重复的问题。
答案 1 :(得分:1)
我只会为你的最终目标而努力:
var str = "Test with {dropdownbegin} content and stuff{dropdownend}coolness";
var filtered = str.replace(/\{dropdownbegin\}.*\{dropdownend\}/, ''); // "Test with coolness"
答案 2 :(得分:1)
As you can read in the documentation of the trim() function,此函数删除字符串前后的空格,但不会触及字符串中的空格。
如果你想删除字符串中的空格,你必须编写自己的函数。
这里有一个小例子:
function cleanStr(str) {
while (str.indexOf("\t") > -1) {
str = str.replace("\t", " ");
}
while (str.indexOf(" ") > -1) {
str = str.replace(" ", " ");
}
return str;
}
使用示例:
cleanStr(" aasdfqwer wer asdaf awer 5asadf sdf ");
<强>结果:强>
" aasdfqwer wer asdaf awer 5asadf sdf "