我想知道如何使用JavaScript刪除字符串中的最後一個單詞?如何使用JavaScript刪除字符串中的最後一個單詞
例如,字符串是「我想刪除最後一個單詞」。
使用中取出後,在文本框中的字符串會顯示「我想刪除最後的」
我已經看到了如何刪除使用字符串函數的最後一個字符,但由於最後一個字可以是不同的每次。有沒有一種方法可以統計在JavaScript中需要刪除多少個單詞?
感謝
我想知道如何使用JavaScript刪除字符串中的最後一個單詞?如何使用JavaScript刪除字符串中的最後一個單詞
例如,字符串是「我想刪除最後一個單詞」。
使用中取出後,在文本框中的字符串會顯示「我想刪除最後的」
我已經看到了如何刪除使用字符串函數的最後一個字符,但由於最後一個字可以是不同的每次。有沒有一種方法可以統計在JavaScript中需要刪除多少個單詞?
感謝
var str = "I want to remove the last word.";
var lastIndex = str.lastIndexOf(" ");
str = str.substring(0, lastIndex);
獲取最後一個空格,然後讓子字符串。
使用split
功能
var myString = "I want to remove the last word";
var mySplitResult = myString.split(" ");
var lastWord = mySplitResult[mySplitResult.length-1]
這一個也適用於我檢索字符串中的最後一個單詞。謝謝 – 2012-02-22 05:22:04
不符合問題中的要求。 – Antoine 2015-06-26 23:16:32
可以以下有沒有單詞字符下面有一個空格匹配的最後一個字。
word=/s+\W*([a-zA-Z']+)\W*$/.exec(string);
if(word) alert(word[1])
我不認爲這真的有效。我得到'字[1] =='t'' – 2012-02-17 05:16:49
一個簡單的方法來做到這一點是使用JavaScript的lastIndexOf()和substr()方法:
var myString = "I want to remove the last word";
myString = myString.substring(0, myString.lastIndexOf(" "));
你可以做一個簡單的正則表達式,像這樣:
"I want to remove the last word.".replace(/\w+[.!?]?$/, '')
>>> "I want to remove the last"
找到最後一個儘管如此," "
的索引可能會更快。這只是更少的代碼。
通過Amir Raminfar繼answer,我發現了這個解決方案。在我看來,它比接受的答案要好,因爲即使你在字符串末尾有一個空格或語言(如法語)在最後一個單詞和標點符號之間有空格,它也可以工作。
"Je veux supprimer le dernier mot !".replace(/[\W]*\S+[\W]*$/, '')
"Je veux supprimer le dernier"
它還剝去最後一個單詞之前的空格和標點符號,因爲OP隱含地要求。
和平。
鬼混,只是爲了好玩,這是一個有趣而無恥的做法!
"I want to remove the last word.".split(" ").reverse().slice(1).reverse().join(" ")
偉大的解決方案。我試圖用一條線使用正則表達式。 – 2012-02-17 05:22:59
這是一個很好的解決方案。它適用於我,我會加強它。 – 2012-02-21 05:14:51