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