Javascript 与/b一起使用时,“替换函数”无法识别西里尔字符
我已经为这个问题挣扎了相当长的一段时间,代码可以很好地处理拉丁字符,至于西里尔文,jquery根本不认识它Javascript 与/b一起使用时,“替换函数”无法识别西里尔字符,javascript,jquery,regex,replace,cyrillic,Javascript,Jquery,Regex,Replace,Cyrillic,我已经为这个问题挣扎了相当长的一段时间,代码可以很好地处理拉丁字符,至于西里尔文,jquery根本不认识它 $('p').each(function() { var $this = $(this); $this.html($this.text().replace(/\b(\w+)\b/g, "<span>$1</span>")); }); 我还尝试了以下代码,但出于某种原因,jQuery会跳过每一个单词,并且不会将其包装: $(this).html($(
$('p').each(function() { var $this = $(this);
$this.html($this.text().replace(/\b(\w+)\b/g, "<span>$1</span>"));
});
我还尝试了以下代码,但出于某种原因,jQuery会跳过每一个单词,并且不会将其包装:
$(this).html($(this).text().replace(/\s([a-zA-Zа-яА-ЯёЁ]+)\s/g, " <span> $1 </span> "));
有什么提示吗?看来JS在这方面并不擅长@Rolice在上面的评论中提到的。在大多数语言中,您只需要更改区域设置 您可能需要执行以下操作:
replace(/(^|[^\w\u0400-\u04FF])(\w+)([^\w\u0400-\u04FF]|$)/,
"$1<span>$2</span>$3");
选中此项: