標準変換
ナビゲーションに移動
検索に移動
Kuro 版[編集]
半角カタカナを全角カタカナに、全角英数字を半角英数字に変換します。文字列変換のサンプルとしても最適かも。
ソースコード[編集]
#title = "標準変換"
#tooltip = "半角カタカナを全角カタカナに、全角英数字を半角英数字に変換します。"
var sel = document.selection;
if (sel.Text == "") {
sel.SelectAll();
}
var map = [];
map[" "] = " ";
map["!"] = "!";
map["“"] = "\"";
map["”"] = "\"";
map["#"] = "#";
map["$"] = "$";
map["%"] = "%";
map["&"] = "&";
map["’"] = "'";
map["("] = "(";
map[")"] = ")";
map["*"] = "*";
map["+"] = "+";
map[","] = ",";
map["-"] = "-";
map["."] = ".";
map["/"] = "/";
map["0"] = "0";
map["1"] = "1";
map["2"] = "2";
map["3"] = "3";
map["4"] = "4";
map["5"] = "5";
map["6"] = "6";
map["7"] = "7";
map["8"] = "8";
map["9"] = "9";
map[":"] = ":";
map[";"] = ";";
map["<"] = "<";
map["="] = "=";
map[">"] = ">";
map["?"] = "?";
map["@"] = "@";
map["A"] = "A";
map["B"] = "B";
map["C"] = "C";
map["D"] = "D";
map["E"] = "E";
map["F"] = "F";
map["G"] = "G";
map["H"] = "H";
map["I"] = "I";
map["J"] = "J";
map["K"] = "K";
map["L"] = "L";
map["M"] = "M";
map["N"] = "N";
map["O"] = "O";
map["P"] = "P";
map["Q"] = "Q";
map["R"] = "R";
map["S"] = "S";
map["T"] = "T";
map["U"] = "U";
map["V"] = "V";
map["W"] = "W";
map["X"] = "X";
map["Y"] = "Y";
map["Z"] = "Z";
map["["] = "[";
map["¥"] = "\\";
map["]"] = "]";
map["^"] = "^";
map["_"] = "_";
map["‘"] = "`";
map["’"] = "`";
map["a"] = "a";
map["b"] = "b";
map["c"] = "c";
map["d"] = "d";
map["e"] = "e";
map["f"] = "f";
map["g"] = "g";
map["h"] = "h";
map["i"] = "i";
map["j"] = "j";
map["k"] = "k";
map["l"] = "l";
map["m"] = "m";
map["n"] = "n";
map["o"] = "o";
map["p"] = "p";
map["q"] = "q";
map["r"] = "r";
map["s"] = "s";
map["t"] = "t";
map["u"] = "u";
map["v"] = "v";
map["w"] = "w";
map["x"] = "x";
map["y"] = "y";
map["z"] = "z";
map["{"] = "{";
map["|"] = "|";
map["}"] = "}";
map["~"] = "~";
map["。"] = "。";
map["「"] = "「";
map["」"] = "」";
map["、"] = "、";
map["・"] = "・";
map["ヲ"] = "ヲ";
map["ァ"] = "ァ";
map["ィ"] = "ィ";
map["ゥ"] = "ゥ";
map["ェ"] = "ェ";
map["ォ"] = "ォ";
map["ャ"] = "ャ";
map["ュ"] = "ュ";
map["ョ"] = "ョ";
map["ッ"] = "ッ";
map["ー"] = "ー";
map["ア"] = "ア";
map["イ"] = "イ";
map["ウ"] = "ウ";
map["エ"] = "エ";
map["オ"] = "オ";
map["カ"] = "カ";
map["キ"] = "キ";
map["ク"] = "ク";
map["ケ"] = "ケ";
map["コ"] = "コ";
map["ガ"] = "ガ";
map["ギ"] = "ギ";
map["グ"] = "グ";
map["ゲ"] = "ゲ";
map["ゴ"] = "ゴ";
map["サ"] = "サ";
map["シ"] = "シ";
map["ス"] = "ス";
map["セ"] = "セ";
map["ソ"] = "ソ";
map["ザ"] = "ザ";
map["ジ"] = "ジ";
map["ズ"] = "ズ";
map["ゼ"] = "ゼ";
map["ゾ"] = "ゾ";
map["タ"] = "タ";
map["チ"] = "チ";
map["ツ"] = "ツ";
map["テ"] = "テ";
map["ト"] = "ト";
map["ダ"] = "ダ";
map["ヂ"] = "ヂ";
map["ヅ"] = "ヅ";
map["デ"] = "デ";
map["ド"] = "ド";
map["ナ"] = "ナ";
map["ニ"] = "ニ";
map["ヌ"] = "ヌ";
map["ネ"] = "ネ";
map["ノ"] = "ノ";
map["ハ"] = "ハ";
map["ヒ"] = "ヒ";
map["フ"] = "フ";
map["ヘ"] = "ヘ";
map["ホ"] = "ホ";
map["バ"] = "バ";
map["ビ"] = "ビ";
map["ブ"] = "ブ";
map["ベ"] = "ベ";
map["ボ"] = "ボ";
map["パ"] = "パ";
map["ピ"] = "ピ";
map["プ"] = "プ";
map["ペ"] = "ペ";
map["ポ"] = "ポ";
map["マ"] = "マ";
map["ミ"] = "ミ";
map["ム"] = "ム";
map["メ"] = "メ";
map["モ"] = "モ";
map["ヤ"] = "ヤ";
map["ユ"] = "ユ";
map["ヨ"] = "ヨ";
map["ラ"] = "ラ";
map["リ"] = "リ";
map["ル"] = "ル";
map["レ"] = "レ";
map["ロ"] = "ロ";
map["ワ"] = "ワ";
map["ン"] = "ン";
map["ヴ"] = "ヴ";
map["゙"] = "゛";
map["゚"] = "゜";
var s1 = sel.Text;
var s2 = "";
for (var i = 0; i < s1.length; i++) {
if (i + 1 < s1.length) {
var c = map[s1.substring(i, i + 2)];
if (c) {
s2 += c;
i++;
continue;
}
}
var c = map[s1.substring(i, i + 1)];
if (c) {
s2 += c;
continue;
}
s2 += s1.substring(i, i + 1);
}
sel.Text = s2;
MSY-07 版[編集]
機種依存文字を機種に依存しない文字に変換します。
Kuro氏が作成した標準変換は2文字までしか変換することができないため、改造して10文字まで変換できるようにしました。なお、「j = 10」の値を変更すれば、11文字以上を変換することもできます。
ソースコード[編集]
#title = "標準変換"
#tooltip = "機種依存文字を機種に依存しない文字に変換します。"
var sel = document.selection;
if (sel.Text == "") {
sel.SelectAll();
}
var map = [];
map["Ⅰ"] = "I";
map["Ⅱ"] = "II";
map["Ⅲ"] = "III";
map["Ⅳ"] = "IV";
map["Ⅴ"] = "V";
map["Ⅵ"] = "VI";
map["Ⅶ"] = "VII";
map["Ⅷ"] = "VIII";
map["Ⅸ"] = "IX";
map["Ⅹ"] = "X";
map["Ⅺ"] = "XI";
map["Ⅻ"] = "XII";
map["ⅰ"] = "i";
map["ⅱ"] = "ii";
map["ⅲ"] = "iii";
map["ⅳ"] = "iv";
map["ⅴ"] = "v";
map["ⅵ"] = "vi";
map["ⅶ"] = "vii";
map["ⅷ"] = "viii";
map["ⅸ"] = "ix";
map["ⅹ"] = "x";
map["ⅺ"] = "xi";
map["ⅻ"] = "xii";
map["①"] = "(1)";
map["②"] = "(2)";
map["③"] = "(3)";
map["④"] = "(4)";
map["⑤"] = "(5)";
map["⑥"] = "(6)";
map["⑦"] = "(7)";
map["⑧"] = "(8)";
map["⑨"] = "(9)";
map["⑩"] = "(10)";
map["⑪"] = "(11)";
map["⑫"] = "(12)";
map["⑬"] = "(13)";
map["⑭"] = "(14)";
map["⑮"] = "(15)";
map["⑯"] = "(16)";
map["⑰"] = "(17)";
map["⑱"] = "(18)";
map["⑲"] = "(19)";
map["⑳"] = "(20)";
map["㉑"] = "(21)";
map["㉒"] = "(22)";
map["㉓"] = "(23)";
map["㉔"] = "(24)";
map["㉕"] = "(25)";
map["㉖"] = "(26)";
map["㉗"] = "(27)";
map["㉘"] = "(28)";
map["㉙"] = "(29)";
map["㉚"] = "(30)";
map["㉛"] = "(31)";
map["㉜"] = "(32)";
map["㉝"] = "(33)";
map["㉞"] = "(34)";
map["㉟"] = "(35)";
map["㊱"] = "(36)";
map["㊲"] = "(37)";
map["㊳"] = "(38)";
map["㊴"] = "(39)";
map["㊵"] = "(40)";
map["㊶"] = "(41)";
map["㊷"] = "(42)";
map["㊸"] = "(43)";
map["㊹"] = "(44)";
map["㊺"] = "(45)";
map["㊻"] = "(46)";
map["㊼"] = "(47)";
map["㊽"] = "(48)";
map["㊾"] = "(49)";
map["㊿"] = "(50)";
var s1 = sel.Text;
var s2 = "";
for (var i = 0; i < s1.length;) {
var matched = false;
for (var j = 10; j >= 1; j--) {
var c = map[s1.substring(i, i + j)];
if (c) {
s2 += c;
i += j;
matched = true;
break;
}
}
if (!matched) {
s2 += s1.charAt(i);
i++;
}
}
sel.Text = s2;
スポンサーリンク