Преобразование символов в ASCII-коды (амперсанд решетка код точка с запятой)
Преобразование символов в ASCII-коды (амперсанд решетка код точка с запятой)
<textarea id="text" style="width:100%" rows="10" ></textarea><br>
<button onClick="conv(1)">Все</button>
<button onClick="conv(2)">Расширенные</button>
<button onClick="conv(3)">Только русские</button>
<button onClick="conv(0)">Символы</button>
<textarea readonly id="result" style="width:100%" rows="10" onClick="this.select()"></textarea><br>
<script>
var cyr=new Array('а','А','б','Б','в','В','г','Г','?','?','д','Д','е','Е','є','Є','ё','Ё','ж','Ж','з','З','?','?','ї','Ї','и','И','й','Й','к','К','л','Л','м','М','н','Н','о','О','п','П','р','Р','с','С','т','Т','у','У','ф','Ф','х','Х','ц','Ц','ч','Ч','ш','Ш','щ','Щ','ъ','Ъ','ы','Ы','ь','Ь','э','Э','ю','Ю','я','Я')
var cyr_code=new Array(1072,1040,1073,1041,1074,1042,1075,1043,1169,1168,1076,1044,1077,1045,1108,1028,1105,1025,1078,1046,1079,1047,1110,1030,1111,1031,1080,1048,1081,1049,1082,1050,1083,1051,1084,1052,1085,1053,1086,1054,1087,1055,1088,1056,1089,1057,1090,1058,1091,1059,1092,1060,1093,1061,1094,1062,1095,1063,1096,1064,1097,1065,1098,1066,1099,1067,1100,1068,1101,1069,1102,1070,1103,1071)
function conv(numb){
arr=new Array("chr","all","exp","rus");
opt=arr[numb];
var x=document.getElementById('text').value.split('');
x=eval(opt+'(x)');
document.getElementById('result').value=x.join('');
}
function all(ar)
{
for(var i=0;i<ar.length;++i)
ar[i]='&#'+ar[i].charCodeAt(0)+';'
return ar
}
function exp(ar)
{
for(var i=0;i<ar.length;++i)
{
var y=ar[i].charCodeAt(0);
if(127<y) ar[i]='&#'+y+';'
}
return ar
}
function rus(ar)
{
for(var i=0;i<ar.length;++i)
for(var j=0;j<cyr.length;j++)
if(ar[i]==cyr[j])ar[i]='&#'+cyr_code[j]+';'
return ar
}
function chr(ar)
{
var arf='';
for(var i=0;i<ar.length;++i)
arf=arf+ar[i];
var reg = /&#(\d+);/g;
var re = arf.match(reg);
if (re == null) return ar;
for(var i=0;i<re.length;++i)
re[i]=String.fromCharCode(re[i].replace('&#','').replace(';',''))
return re;
}
</script>