Javascript trim()不起作用

javascript trim() doesn't work

本文关键字:不起作用 trim Javascript      更新时间:2023-09-26

我试图在删除部分字符串之前修剪字符串,但是字符串中的空格有问题。

我尝试修剪的字符串是这个

        200    KristianMedK                                                                fisk                                                         {dropdownbegin}                                  Ikke valgt                        fisk                        fugl                                                dinosaur                                                kristian                                                         {dropdownend}                                                                        Ikke valgt                                                                {dropdownbegin}                                  Ikke valgt                                            KristianMedK                       Laks                       TunMedT                       lasse                           {dropdownend}                    

字符串是从表排序器jquery库中元素的.text()方法返回。我已经通过

从字符串中过滤掉了一堆字符。
mystring = mystring.replace(/'n/g, "")
使用

mystring= mystring.replace(" ","") 

也没有影响。

我怎么能找出在哪里,如果任何其他特殊字符隐藏在字符串搞乱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

原因我不知道。

编辑修剪问题很快就解决了,因为我没有正确地搜索现有的问题。

尝试mystring.replace(/'s+/g, ' ');$.trim()

正如Pavel和Arun p在评论中指出的,这可能是一个重复的问题。

正如你可以在trim()函数的文档中读到的那样,这个函数会删除字符串前后的空白,但它不会触及字符串中的空白。

如果你也想删除字符串中的空白,你必须自己编写函数。

这里有一个小例子:

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 "

我只会为你的最终目标而去:

var str = "Test with {dropdownbegin} content and stuff{dropdownend}coolness";
var filtered = str.replace(/'{dropdownbegin'}.*'{dropdownend'}/, ''); // "Test with coolness"