Javascript用颜色突出显示所有排除的字符



我想用Javascript创建一个正则表达式,用<span></span>突出显示列表中所有排除的字符。有人能帮我创建这个复杂的正则表达式吗?

示例文本:This is a text 莊子 that contains · forbidden characters.

需要转换为:This is a text <span>莊</span><span>子</span> that contains <span>·</span> forbidden characters.

允许的字符列表:a-z, A-Z, 0-9, +%#()*+,-/:;<=>?_€£¥§ÄÅÜäèéìñòöùü=“”‘’'"

谢谢你帮我!

您可以使用否定模式:

str = str.replace(/[^ w+%#()*+.,/:;<=>?€£¥§ÄÅÜäèéìñòöùü=“”‘’'"-]/g, '<span>$&</span>');
//=> This is a text <span>莊</span><span>子</span> that contains <span>·</span> forbidden characters.

RegEx演示

最新更新