2016-08-17 163 views
-1

如何從字符串中刪除最後一個單詞?如何從字符串中刪除最後一個單詞?

例如,該輸入:"I am from Tamil Nadu."

我想這樣的結果:"I am from Tamil."

+0

你可以做到這一點很容易沒有足夠的jQuery雖然 –

+2

http://stackoverflow.com/questions/9323182/how-to-remove-the-last-word-in-the-string-使用-javascript –

+0

我得到了解決方案使用下面的語句:var lastIndex = str.lastIndexOf(「」); str = str.substring(0,lastIndex); alert(str); –

回答

4

var str = " i am from Tamil nadu."; 
 
    var res = str.split(" "); //split by space 
 
    res.pop(); //remove last element 
 
    alert(res.join(" ") + "."); //join back together

1

您可以通過split單詞之間slice最後一部分和join一切再度合作空間,脫落。而且都在一條線上。 ;)

var str = "i am from Tamil nadu."; 
 
var my = str.split(" ").slice(0, -1).join(" "); 
 

 
console.log(my);

如果總是在最後一個.,你要保持它,你可以使用正則表達式或東西。但是當總是有一個點時,我會再次追加它們,而不會嘗試任何更復雜的事情。

var str = "i am from Tamil nadu."; 
 
var my = str.split(" ").slice(0, -1).join(" ") + "."; 
 

 
console.log(my);

或者你可以做一次檢查之後了。

var str = "i am from Tamil nadu."; 
 
var my = str.split(" ").slice(0, -1).join(" "); 
 

 
if(str.trim().substr(-1) === ".") { 
 
    my += "."; 
 
} 
 

 
console.log(my);

1

我得到了這個解決方案:

var lastIndex = str.lastIndexOf(" "); 
str = str.substring(0, lastIndex); 
alert(str); 
+0

這不會產生您在問題中輸出的輸出,您在該短語的結尾處有句號(點)。 – trincot

0

試試這個:

<html> 
 
    <head> 
 
     <meta charset="utf-8"> 
 
    </head> 
 
    <body> 
 
     <script> 
 
      var str = "I am from Tamil Nadu." 
 
      var res = ""; 
 
       var spl = str.split(' '); 
 
       var len = spl.length; 
 
       for(var i=0; i<len - 1;i++) { 
 
        if(i == len-2) 
 
         res +=spl[i] +"."; 
 
        else 
 
         res +=spl[i] +" "; 
 
       } 
 
      alert(res); 
 
     </script> 
 
    </body> 
 
</html>

相關問題