2013-01-05 69 views
-1

我正在爲google chrome做一個擴展,我希望能夠找到某些文本塊,並用隨機字母或數字替換它們,除了某些文本是由用戶例如他們輸入單詞狗,並且所有說狗的單詞如前所述被找到並替換。幫助非常希望Javascript查找和替換文字

+1

如果你打算搜索 「text_的_certain片」?整個頁面?在某些形式元素?你需要提出更具體的問題。請包括例子。 – jahroy

+1

你有什麼嘗試?你有沒有嘗試在任何搜索引擎中輸入'javascript替換文字'? – Stuart

回答

3

嘗試使用JavaScript的.replace()方法。 假設你有一個div像這樣對包含文本:<div id="test">Original Text</div>,使用JavaScript代碼:

var orignalstring = document.getElementById("test").innerHTML; 
var newstring = orignalstring.replace("original","replaced"); 
document.getElementById("test").innerHTML = newstring; 

基本上,這將確定整個div的全部內容,然後找到某些文字和替換這些術語,像你問。如果你想在一個命令中替換多個字符串,試試這個:How to replace multiple strings with the .replace() Method?。這是幾個星期前我問過的有關.replace()的問題。

而且,試試這個的jsfiddle:http://jsfiddle.net/tGMaN/

如果你希望用戶能夠定義文本,以取代和替換文本,您可以輕鬆地通過文本字段或一個提示框,這些值做到這一點可以存儲爲在.replace()方法中調用的變量。

+1

THANKYOU這麼多幫助很多 – Obcure

2

String對象有很多有用的方法。

var theNewString = theString.replace(findThis, replaceWithThis); 

https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/replace

// Generates a string of random letters 
function generateRandomKey(number) { 
    var key = String(); 
    var values = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; 
    for(var i = 0; i < number; i++) { 
     key += values.charAt(Math.floor(Math.random() * values.length)); 
    } 
    return key; 
}