-1

我正在为 google chrome 做一个扩展,我希望能够找到某些文本并使用 javascript 将它们替换为随机字母或数字,除非某些文本是用户输入的变量,例如他们输入单词 dog 和如前所述,找到并替换所有说狗的单词。非常想要帮助

4

2 回答 2

3

尝试使用.replace()JavaScript 的方法。假设您有一个这样的 div 用于包含 text: <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 的全部内容,然后找到某些文本并替换这些术语,就像你问的那样。如果你想在一个命令中替换多个字符串,试试这个:如何用 .replace() 方法替换多个字符串?. 这是我几周前问过的一个问题.replace()

另外,试试这个 JSFiddle:http: //jsfiddle.net/tGMaN/

如果您希望用户能够定义要替换的文本和替换文本,您可以通过文本字段或提示框轻松地做到这一点,并且这些值可以存储为在.replace()方法中调用的变量。

于 2013-01-05T01:04:49.660 回答
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;
}
于 2013-01-05T01:05:33.313 回答