在jQuery中有一種簡單的方法來替換給定字符串中'_'(下劃線)的最後一次出現嗎?替換字符串中最後一次出現的字符
回答
你不需要jQuery,只是一個正則表達式。
這將刪除最後一個下劃線:
var str = 'a_b_c';
str = str.replace(/_([^_]*)$/,'$1'); //a_bc
這將變量replacement
的內容替換它:
var str = 'a_b_c', replacement = '!';
str = str.replace(/_([^_]*)$/,replacement+'$1'); //a_b!c
+1 Hurtigkarl :))) – mplungjan 2011-03-31 08:56:49
@Martin Jespersen:如果要替換的文本不是下劃線而是一個名爲replaceMe的變量的內容會怎樣? 正則表達式應該如何修改? – Pierpaolo 2012-12-18 10:07:30
@Pierpaolo:您必須使用「new RegExp」創建正則表達式,請在此處閱讀全部內容:https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions - 記住要逃脫'replaceMe'變量,因此它不包含將改變正則表達式的特殊字符 – 2012-12-18 18:38:00
無需jQuery的也正則表達式
str = str.substring(0,str.length-2)+otherchar
替換最後一個字符的字符串
var pos = str.lastIndexOf('_');
str = str.substring(0,pos) + otherchar + str.substring(pos+1)
,以取代過去的下劃線
或使用正則表達式,你會之一從某人得到一分鐘:)
反轉字符串替換字符,反向的字符串。
下面是在javascript逆轉字符串後:How do you reverse a string in place in JavaScript?
我認爲是相同的,但後來運行一個基準比較倒數lastIndexOf:http://jsperf.com/replace-last – fakewaffle 2013-10-11 20:18:56
保持簡單
var someString = "a_b_c";
var newCharacter = "+";
var newString = someString.substring(0, someString.lastIndexOf('_')) + newCharacter + someString.substring(someString.lastIndexOf('_')+1);
您可以使用此代碼
var str="test_String_ABC";
var strReplacedWith=" and ";
var currentIndex = str.lastIndexOf("_");
str = str.substring(0, currentIndex) + strReplacedWith + str.substring(currentIndex + 1, str.length);
alert(str);
什麼這個?
function replaceLast(x, y, z){
var a = x.split("");
a[x.lastIndexOf(y)] = z;
return a.join("");
}
replaceLast("Hello world!", "l", "x"); // Hello worxd!
這是非常相似的mplungjan的答案,但可以更容易一點(特別是如果你需要後立即做其他的字符串操作,並希望保持它作爲一個數組) 無論如何,我只是覺得我」把它放在那裏以防有人喜歡它。 「 - 」可你要替換它的字符或字符串替換
var str = 'a_b_c';
str = str.split(''); //['a','_','b','_','c']
str.splice(str.lastIndexOf('_'),1,'-'); //['a','_','b','-','c']
str = str.join(''); //'a_b-c'
的「_」可以與要替換
焦炭,換出與
- 1. 替換字符串中最後一次出現的單詞 - c#
- 2. 的JavaScript:替換字符串文本中最後一次出現
- 3. 替換字符串中最後出現的子字符串
- 4. 第一次替換字符串中出現的字符串VB.NET
- 5. Javascript/jQuery - 替換字符串中最後一個字的出現
- 6. PHP替換多行字符串中最後一次出現的字
- 7. 替換字符的最後一次出現在文件中
- 8. 幫助用新字符替換最後一次出現的字符
- 9. 查找字符串中字符的最後出現次數
- 10. rreplace - 如何替換字符串中最後一次出現的表達式?
- 11. 在flex中的字符串中最後一次出現字符串
- 12. 替換字符串中的最後一個字符
- 13. 如何查找Swift字符串中子字符串的最後一次出現?
- 14. 替換Python中第一次出現的字符串
- 15. 只替換一個字符串的第一次出現?
- 16. 如何替換在字符串中多次出現的子字符串?
- 17. MySQL替換出現在另一個字符串後面的字符串部分
- 18. 使用JavaScript替換字符串的最後一個字符
- 19. 如何刪除字符串中最後一次出現的字符?
- 20. 最後一次出現「|」後的VBScript選擇子字符串
- 21. 刪除javascript中最後一次出現的字符串
- 22. sed搜索並替換字符串和最後一次發生的字符
- 23. MYSQL:查找字符的最後一次出現在一個字符串
- 24. 用替換字符串中出現的相同單詞替換字符串
- 25. PHP替換字符串的第一次出現,從第0位
- 26. 如何從字符串sql中最後一次出現字符獲取索引?
- 27. 批次字符串替換
- 28. 替換字符串數組中的最後一個字母Javascript
- 29. 替換字符串中的最後一個字
- 30. 字符串出現在另一個字符串中的次數
它總是字符串的最後一個字符?如果沒有,看看string.lastIndexOf(searchstring,start) – skarmats 2011-03-31 08:56:14
[你不需要jQuery](http://meta.stackexchange.com/questions/45176/when-is-use-jquery-not-a - 有效應答對A-JavaScript的問題)。 – zzzzBov 2013-02-19 22:41:28
[如何用javascript替換字符串中最後出現的字符]可能的重複(http://stackoverflow.com/questions/3829483/how-to-replace-last-occurrence-of-characters-in-a-string -using-javascript) – 2014-09-04 05:41:22