這是一個簡單的。我想用客戶端的另一個子字符串替換一個子字符串。Javascript - 如何替換子字符串?
原始的字符串是'original READ ONLY'
我想'READ ONLY'
與'READ WRITE'
任何快速的答案,以取代嗎?可能帶有JavaScript代碼段...
這是一個簡單的。我想用客戶端的另一個子字符串替換一個子字符串。Javascript - 如何替換子字符串?
原始的字符串是'original READ ONLY'
我想'READ ONLY'
與'READ WRITE'
任何快速的答案,以取代嗎?可能帶有JavaScript代碼段...
與string.replace()是正則表達式爲基礎;如果你傳入一個字符串作爲第一個參數,那麼由它產生的正則表達式將不包含'g'(全局)標誌。如果要替換搜索字符串的所有出現(通常是您想要的),則此選項非常重要。
簡單的全局字符串一個可選的非正則表達式替換的成語是:
function string_replace(haystack, find, sub) {
return haystack.split(find).join(sub);
}
,這是優選在「查找」字符串可能包含在正則表達式不需要的特殊含義的字符。
無論如何,無論哪種方法都適用於問題中的示例。
好summary。它是基於正則表達式的,如果使用正則表達式符號,則可以指定i和g修飾符(不區分大小寫(i),無論大小寫還是全局(g),它都將匹配,這將取代所有的出現),如果使用字符串符號將被轉換爲正則表達式,並且您不會'指定任何修飾符。
<script type="text/javascript">
var str1="Visit Microsoft!";
var str2 = str1.replace(/microsoft/i, "W3Schools"); //Will work, per the i modifier
var str3 = "original READ ONLY";
var str4 = str3.replace("ONLY", "WRITE"); //Will also work
</script>
str2 = str2.replace(/^Visit /,'Do not visit'); – Gareth 2008-10-31 09:19:36
stringObject.replace(findstring,newstring)
我更喜歡正則表達式的方法,
newstring = oldstring.replace(/ regexforstringtoreplace /, '新的字符串');
它也值得考慮g和i正則表達式修飾符,它們進行全局替換(即替換所有出現的)並使其不區分大小寫。
例如:
<script type="text/javascript">
var str = "this is a String";
document.write(str.replace(/\s/g, "_"));
would print: this_is_a_string
document.write(str.replace(/s/gi, "f"));
would print "thif if a ftring"
</script>
我不確定你是非常誠實的。這個問題可能是一個「毫不費腦」的問題,但是當一個人正在實現某些功能時,這是一件很重要的事情。特別是與字符串操作有關的事情。我覺得Stackoverflow最適合這樣的。所以請不要偏見。 – 2008-10-31 16:08:38
您在問如何替換*定義的字符串*中的*定義的字*。我看不出任何依賴於實現的微妙之處,它只是簡單而且簡單。沒有冒犯,*問*這樣的問題沒有任何問題。 *對他們進行投票是錯誤的。 – Tomalak 2008-10-31 19:15:00
您的投訴毫無根據。向上箭頭圖像上的「alt」文本顯示「這個問題很有用且清晰......」,這是一個主觀問題。現在,如果它說「托馬拉克大使這個問題是有用和明確的......」,那麼你的投訴可能有理由。 – 2010-07-23 08:00:52