【发布时间】:2020-08-14 02:10:57
【问题描述】:
我创建了一个简单的文本区域,其中一些字符会自动替换,例如,将直引号替换为智能引号、将双破折号替换为 em 破折号、将双空格替换为单个空格。
但现在我不知道如何添加替换脚本:(不带引号)
word . as word.
word , as word,
word ; as word;
我只是想防止在逗号、句号和分号之前以及像这样的单词之后出现额外的空格
Hello world ; 应自动替换为 Hello world;
这是我当前的脚本:
var $message = $("#textarea1");
$message.on("keydown keypress", function() {
var $this = $(this),
val = $(this).val()
.replace(/(^|[-\u2014\s(\["])'/g, "$1\u2018")
.replace(/'/g, "\u2019")
.replace(/(^|[-\u2014/\[(\u2018\s])"/g, "$1\u201c")
.replace(/"/g, "\u201d")
.replace(/--/g, "\u2014")
.replace(/ +(?= )/g,'');
$this.val(val);
});
我找不到可以替代的实体。有人碰巧有这方面的现有代码吗?
如果我尝试
.replace(/ ;/g, "\;")
或
.replace(/ /g, "\;")
这行不通..
【问题讨论】:
-
你要试试
.replace(/ /g, ";")或.replace(/ /gi, ";")吗?
标签: javascript html regex textarea entity