将字母表中的所有字母实例替换为另一个
replace all instances of letters in the alphabet with another
我有英文字母:
abcdefghijklmnopqrstuvwxyz
我还有另一个字母表:
ypltavkrezgmshubxncdijfqow
如果我有一个字符串。我想用新字母表中的等效字符替换每个字符。
因此,如果字符串是 abcde,则新字符串将是 yplta。
我试过:
http://jsfiddle.net/KvFCr/10/
但不是走得很远,甚至不知道这是否是最好的方法。有没有更好的方法使用jquery和javascript实现我想要的东西?
var alphabet1 = "abcdefghijklmnopqrstuvwxyz";
var alphabet2 = "ypltavkrezgmshubxncdijfqow";
var message = "encodethismessage".toLowerCase();
alert(encode(message,alphabet1,alphabet2));
function encode(message, alphabet1, alphabet2) {
var newMessage = "";
messageArr = message.split('');
for(i in messageArr) {
index = alphabet1.search(messageArr[i]);
newMessage += alphabet2[index];
}
return newMessage;
}
你必须小心,因为你不想触摸一个你已经转换的角色。例如,如果您替换所有"a",然后替换所有"b"等,您将无法获得正确的结果。 这应该有效,因为它转换每个字符而不是每个字符类。
只是想警告您,替换密码并不安全,因为有简单的密码文本攻击它们,所以不要将其用于任何以安全为目标的事情。
尝试:
var alpha1 = "abcdefghijklmnopqrstuvwxyz";
var alpha2 = "ypltavkrezgmshubxncdijfqow";
var str = "abcde";
var newstr = '';
for(var i=0;i<str.length;i++) {
charPos = alpha1.indexOf(str.charAt(i));
newstr += alpha2.charAt(charPos);
}
console.log(newstr);
jsFiddle 示例。
您可以将
函数作为参数传递给string.replace
。
var s = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.replace(/[A-Z]/g, function(str, p1, p2, offset, s) {
var translate_table = {
'A': 'Y',
'B': 'P',
'C': 'L',
'D': 'T',
'E': 'A',
'F': 'V',
'G': 'K',
'H': 'R',
'I': 'E',
'J': 'Z',
'K': 'G',
'L': 'M',
'M': 'S',
'N': 'H',
'O': 'U',
'P': 'B',
'Q': 'X',
'R': 'N',
'S': 'C',
'T': 'D',
'U': 'I',
'V': 'J',
'W': 'F',
'X': 'Q',
'Y': 'O',
'Z': 'W'
};
return translate_table[str];
});
alert(s);
http://jsfiddle.net/GjG3H/
相关文章:
- javascript正则表达式,将多个实例替换为多行字符串中的单个实例
- 替换字符串中YouTube/Vimeo iframe的所有实例
- Javascript 替换所有实例
- 将字母表中的所有字母实例替换为另一个
- Jquery:在一个字符串中查找所有实例模式,提示用户替换模式的所有实例,然后进行替换
- 如何在 JavaScript 中替换字符串中“+”的多个实例
- 将实例变量替换为局部变量
- 正则表达式 Express 将反斜杠 的每个实例替换为字符串中的 u
- JavaScript 替换了所有在 Chrome 中不起作用的实例
- 替换 JavaScript 模板中相同值的多个实例
- 如何在使用数据表时替换Knockout中的数组实例
- 如何替换角色的所有实例
- 替换多个元素中字符的所有实例
- Javascript将换行符ASCII(13)的所有实例替换为“; ”;
- Javascript Regex找到一个字符串的实例并替换它后面的字符串
- javascript用多个html替换()多个bbcode实例
- JS/JQuery-如何迭代html(),替换字符串的每个实例
- Javascript将网络位置的所有实例替换为超链接
- 将JS字符串中引用的GUID的一个或多个实例替换为未引用的版本
- 如何将短划线 (-) 的所有实例替换为字符串中的正斜杠 (/)