提问者:小点点

替换javascript中string中的所有字符[closed]


我正在寻找在javascript或jquery中更改字符串中所有字符的最佳和最快的方法

例如:

abcdefghijklmnopqrstuvwxyz==>aximi、fixi、fixi、fixi、fixi、fixi、fixi、fixi、fixi、fixi、fixi、fix

abcdefghijklmnopqrstuvwxyz==>å¡Á¡ãghïjklmñãqr§µvwx¡ãz

...。

<textarea>hello world</textarea>

输出:GONRECHIPA??????????


共2个答案

匿名用户

使用对象进行逐字符转换,然后使用回调参数调用replace:

null

tran = {
  "a": "α",
  "b": "в",
  "c": "¢",
  "d": "∂",
  "e": "є",
  "f": "ƒ",
  "g": "g",
  "h": "н",
  "i": "ι",
  "j": "נ",
  "k": "к",
  "l": "ℓ",
  "m": "м",
  "n": "η",
  "o": "σ",
  "p": "ρ",
  "q": "q",
  "r": "я",
  "s": "ѕ",
  "t": "т",
  "u": "υ",
  "v": "ν",
  "w": "ω",
  "x": "χ",
  "y": "у",
  "z": "z"
};

let input = document.querySelector("textarea");
let output = document.querySelector("div");
input.addEventListener("input", refresh);

function refresh() {
    output.textContent = input.value.replace(/\S/g, m =>
        tran[m]??m
    );
}

refresh();
<textarea>hello world</textarea>
<div></div>

匿名用户

我想这可能是解决你问题的最好办法

用多个其他字符串替换多个字符串

您必须手动映射每个字符并替换为所需的字符:(