Abbreviations, automatic: Difference between revisions
Content deleted Content added
Alpha bravo (talk | contribs) Added AutoHotkey |
|||
Line 1,590: | Line 1,590: | ||
2 Killachau Atichau Quoyllurchau Illapachau Chaskachau Kuychichau Intichau |
2 Killachau Atichau Quoyllurchau Illapachau Chaskachau Kuychichau Intichau |
||
</pre> |
</pre> |
||
=={{header|AutoHotkey}}== |
|||
<lang AutoHotkey>AutoAbbreviations(line){ |
|||
len := prev := 0 |
|||
Days := StrSplit(line, " ") |
|||
loop % StrLen(Days.1) |
|||
{ |
|||
obj := [] |
|||
for j, day in Days |
|||
{ |
|||
abb := SubStr(day, 1, len) |
|||
obj[abb] := (obj[abb] ? obj[abb] : 0) + 1 |
|||
if (obj[abb] > 1) |
|||
{ |
|||
len++ |
|||
break |
|||
} |
|||
} |
|||
if (prev = len) |
|||
break |
|||
prev := len |
|||
} |
|||
return len |
|||
}</lang> |
|||
Examples:<lang AutoHotkey>data := " |
|||
( |
|||
Sunday Monday Tuesday Wednesday Thursday Friday Saturday |
|||
Sondag Maandag Dinsdag Woensdag Donderdag Vrydag Saterdag |
|||
E_djelë E_hënë E_martë E_mërkurë E_enjte E_premte E_shtunë |
|||
Ehud Segno Maksegno Erob Hamus Arbe Kedame |
|||
Al_Ahad Al_Ithinin Al_Tholatha'a Al_Arbia'a Al_Kamis Al_Gomia'a Al_Sabit |
|||
)" |
|||
for i, line in StrSplit(data, "`n", "`r") |
|||
{ |
|||
line := RegExReplace(line, "\s+", " ") |
|||
len := AutoAbbreviations(line) |
|||
abbrev := "" |
|||
for j, day in StrSplit(line, " ") |
|||
abbrev .= SubStr(day, 1, len) " " |
|||
result .= len " > " abbrev "`n" |
|||
} |
|||
MsgBox % result |
|||
return</lang> |
|||
{{out}} |
|||
<pre>2 > Su Mo Tu We Th Fr Sa |
|||
0 > |
|||
2 > So Ma Di Wo Do Vr Sa |
|||
4 > E_dj E_hë E_ma E_më E_en E_pr E_sh |
|||
2 > Eh Se Ma Er Ha Ar Ke |
|||
5 > Al_Ah Al_It Al_Th Al_Ar Al_Ka Al_Go Al_Sa </pre> |
|||
=={{header|AWK}}== |
=={{header|AWK}}== |