Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Все возможные варианты слова с заменой на латиницу (https://javascript.ru/forum/misc/66762-vse-vozmozhnye-varianty-slova-s-zamenojj-na-latinicu.html)

Hur_ley 09.01.2017 01:28

Все возможные варианты слова с заменой на латиницу
 
Дано слово на латинице. например, METAL, нужно вывести все возможные варианты этого слова с заменой латинских букв на кириллицу, какие могут быть решения?

рони 09.01.2017 01:55

Цитата:

Сообщение от Hur_ley
нужно вывести все возможные варианты

это что?

Hur_ley 09.01.2017 11:56

Цитата:

Сообщение от рони (Сообщение 440081)
это что?

Вывести на страничку это же слово но с замененными буквами

MЕTAL
МETAL

и т.д.

рони 09.01.2017 12:03

Hur_ley,
L не заменять?

Dilettante_Pro 09.01.2017 12:41

Цитата:

Сообщение от Hur_ley
Дано слово на латинице. например, METAL, нужно вывести все возможные варианты этого слова с заменой латинских букв на кириллицу, какие могут быть решения?

Насколько я смог понять, нужно сформировать два массива внешне похожих латинских и кириллических букв и, при их наличии в исходном слове, выдать все возможные варианты сочетаний замены букв

рони 09.01.2017 15:49

перебор варантов замены латиницы на кирилицу
 
Hur_ley,
шифровка из центра ...
<style type="text/css">
  .rus{
    color: #FF0000;
  }

  </style>


  <script>
var obj = {M : "М", E : "Е",T : "Т", A : "А"};
function inObj(b) {
    return obj[b]
}

function fn(b) {
    b = b.split("");
    for (var d = [], f = b.filter(inObj).length, e = 0;; e++) {
        var a = e.toString(2),
            c = f - a.length;
        if (0 > c) break;
        0 < c && (a = Array(++c).join("0") + a);
        var g = a.split(""),
            a = b.map(function(a) {
                var b = inObj(a);
                return b && +g.shift() ? '<span class="rus">' + b + "</span>" : a
            });
        d.push(a.join(""))
    }
    return d
};
document.write(fn('METAL').join('<br>'));


  </script>


Часовой пояс GMT +3, время: 17:29.