「標準変換」の版間の差分
見出しの修正 |
SyntaxHighlightにcopyの追加 |
||
| (2人の利用者による、間の5版が非表示) | |||
| 3行目: | 3行目: | ||
=== ソースコード === | === ソースコード === | ||
<syntaxhighlight lang="javascript"> | <syntaxhighlight lang="javascript" copy> | ||
#title = "標準変換" | |||
#tooltip = "半角カタカナを全角カタカナに、全角英数字を半角英数字に変換します。" | |||
var sel = document.selection; | |||
if (sel.Text == "") { | |||
var map = | sel.SelectAll(); | ||
} | |||
var map = []; | |||
map[" "] = " "; | map[" "] = " "; | ||
map["!"] = "!"; | map["!"] = "!"; | ||
| 200行目: | 198行目: | ||
map["゙"] = "゛"; | map["゙"] = "゛"; | ||
map["゚"] = "゜"; | map["゚"] = "゜"; | ||
var s1 = | var s1 = sel.Text; | ||
var s2 = ""; | var s2 = ""; | ||
for (var i = 0; i < s1.length; i++) { | 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; | |||
</syntaxhighlight> | </syntaxhighlight> | ||
| 227行目: | 225行目: | ||
=== ソースコード === | === ソースコード === | ||
<syntaxhighlight lang="javascript"> | <syntaxhighlight lang="javascript" copy> | ||
#title = "標準変換" | |||
#tooltip = "機種依存文字を機種に依存しない文字に変換します。" | |||
var map = | |||
var sel = document.selection; | |||
if (sel.Text == "") { | |||
sel.SelectAll(); | |||
} | |||
var map = []; | |||
map["Ⅰ"] = "I"; | map["Ⅰ"] = "I"; | ||
map["Ⅱ"] = "II"; | map["Ⅱ"] = "II"; | ||
| 305行目: | 308行目: | ||
map["㊾"] = "(49)"; | map["㊾"] = "(49)"; | ||
map["㊿"] = "(50)"; | map["㊿"] = "(50)"; | ||
var s1 = | var s1 = sel.Text; | ||
var s2 = ""; | var s2 = ""; | ||
for (var i = 0; i < s1.length;) { | 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; | |||
</syntaxhighlight> | </syntaxhighlight> | ||
スポンサーリンク