如何用一个单词替换每个单词

How do I replace every word with one word?

本文关键字:单词 替换 何用一      更新时间:2023-09-26

我想要Javascript,它将页面上的所有文本更改为特定的字符串。例如,如果我想将每个单词都设置为"Hello":

以前:

Hey there, how are you?

后:

Hello Hello Hello Hello Hello

这将如何完成?它会对整个页面执行此操作,因此它需要保持HTML标签不变,只需更改文本内容。

此代码必须在页面加载执行。

function malkovich(node) {
  if(node.nodeType === 1)
    return [].forEach.call(node.childNodes, malkovich);
  if(node.nodeType === 3)  
    node.textContent = node.textContent
         .replace(/'b[A-Z]'w+/g, "Malkovich")
         .replace(/'b[a-z]'w+/g, "malkovich")
}
<h1>Hi, there!</h1>
<p>Some <b>more</b> text...</p>
<p>"Gallia est omnis divisa in partes tres, quarum <u>unam</u> incolunt <i>Belgae</i>, <u>aliam</u> <i>Aquitani</i>, <u>tertiam</u> qui ipsorum lingua <i>Celtae</i>, nostra <i>Galli</i> appellantur". </p>
<button onclick="malkovich(document.body)">malkovich</button>

将所有内容转换为字符串,然后使用 .replace 方法

"Hey there, how are you?".replace(/[^'s]+/g, "Hello");
// replaces any non-space sequence with over 1 character
// outputs "Hello Hello Hello Hello Hello"

我强烈推荐 https://regex101.com/

你也可以[a-zA-Z]+正面匹配角色,只是

乱搞它

祝你好运