Javascript 将n个字符后的输入拆分为与字典对应
我正在寻找一种方法,在n=8个字符后拆分我的“二进制到文本”转换器的输入字符。我假设这就是如何使输入与我的二进制字典相对应。 例如: 如果我在输入字段中键入“011000010110001001100011”,输出将给我“abc”(0110001=a,01100010=b,01100011=c) 然而,当我翻译单个二进制代码时,它似乎工作得很好。 例如: 我能把“0110001”翻译成“a” 以下是在修改我已经完成的“文本到二进制”翻译器之后,到目前为止我所做的:Javascript 将n个字符后的输入拆分为与字典对应,javascript,dictionary,Javascript,Dictionary,我正在寻找一种方法,在n=8个字符后拆分我的“二进制到文本”转换器的输入字符。我假设这就是如何使输入与我的二进制字典相对应。 例如: 如果我在输入字段中键入“011000010110001001100011”,输出将给我“abc”(0110001=a,01100010=b,01100011=c) 然而,当我翻译单个二进制代码时,它似乎工作得很好。 例如: 我能把“0110001”翻译成“a” 以下是在修改我已经完成的“文本到二进制”翻译器之后,到目前为止我所做的: 二进制到文本 在这里写信:
二进制到文本
在这里写信:
翻译
结果:
变量二进制={
'0110001':'a',
'01100010':'b',
'01100011':'c',
'01100100':'d',
'01100101':'e',
'01100110':'f',
'01100111':'g',
'01101000':'h',
'01101001':'i',
'011010':'j',
'0110111':'k',
'01101100':'l',
'01101101':'m',
'01101110':'n',
'0110111':'o',
'01110000':'p',
'0111001':'q',
'011110010':'r',
'011110011':'s',
'01110100':'t',
'0111011':'u',
'01110110':'v',
'01110111':'w',
'01111000':'x',
'01111001':'y',
'01111010':'z',
'00110001': '1',
'00110010': '2',
'00110011': '3',
'00110100': '4',
'00110101': '5',
'00110110': '6',
'00110111': '7',
'00111000': '8',
'00111001': '9',
'00110000': '0',
'00100000': ' ',
'00111111': '?',
'00111010': ':',
'00101000': '(',
'00101001': ')',
'00101110': '.',
'00101100': ',',
'00111011': ';'
};
var inp=document.getElementById('inp');
var butt=document.getElementById('butt');
var out=document.getElementById('out');
butt.addEventListener('click',函数(){
var conv=输入值;
conv=conv.split(“”);
对于(变量i=0;i
可以与查找8个字符组的正则表达式一起使用
array = string.match(/.{8}/g)
var二进制={'01100001':'a'、'01100010':'b'、'01100011':'c'、'01100100':'d'、'01100101':'e'、'01100110':'f'、'01100100':'h'、'01101001':'j'、'01101101101101101':'l'、'01101101101101':'m'、'01101101101101101110':'n':'n'、'011011011011011111':'o'、'011110000':'p'、'011110001':'q'、'011010':'r'、'0111100011011011010':'1'01’:‘u’、‘01101110’:‘v’、‘0110110111’:‘w’、‘01111000’:‘x’、‘01111001’:‘y’、‘0111010’:‘z’、‘001100001’:‘1’、‘00110010’:‘2’、‘00110011’:‘3’、‘00110100’:‘4’、‘00110101’:‘5’、‘00110110’:‘6’、‘00110111’:‘7’、‘00111000’:‘8’、‘00111001’:‘9’、‘00110000’:‘0’、‘00100000’:‘00111111’、‘00111011’:‘00111’、‘00110100’、‘00111000’、‘00110’:‘00101001’:‘00100’、‘00100’:‘00100’:‘001', '00101110': '.', '00101100': ',', '00111011': ';' },
input=document.getElementById('input');
button=document.getElementById('button');
out=document.getElementById('out');
addEventListener('click',function(){
var数组=input.value.match(/.{8}/g),
result=(数组| |[]).map(函数(a){//检查以防止迭代非数组
返回二进制[a]| |“未知”;
}).加入(“”);
out.value=结果;
});
在这里写信:
翻译
结果:
只有当我想翻译这个短语(“011000010110001001100011”)时,这似乎才起作用,除非我做错了什么。谢谢!现在效果很好。