换行不包含在单词中的字符

时间:2016-01-13 13:54:45

标签: javascript jquery html

我目前正在使用游戏制作者教程开发网站。有时我必须在网站上放几行代码。为了让它看起来更像游戏制作者本身,我想改变文本中特定字符和单词的颜色。

现在我试图改变所有X和Y的颜色。这就是我现在所拥有的:

$(document).ready(function(){
    $(".code").children().each(function() {
        $(this).html($(this).html().replace(/\x\b/g, "<font color=red>x</font>"));
        $(this).html($(this).html().replace(/\X\b/g, "<font color=red>X</font>"));
        $(this).html($(this).html().replace(/\y\b/g, "<font color=red>y</font>"));
        $(this).html($(this).html().replace(/\Y\b/g, "<font color=red>Y</font>"));
    });
})

虽然它会对字符进行着色,但它也会对单词中的字符进行着色,这不是我想要的。我应该添加或更改哪些内容,只会为不在单词中的X和Y着色?

1 个答案:

答案 0 :(得分:0)

我认为这些代码可以解决您的问题。刚开始使用\b进行正则表达式

$(document).ready(function(){
    $(".code").children().each(function() {
        $(this).html($(this).html().replace(/\b\x\b/g, "<font color=red>x</font>"));
        $(this).html($(this).html().replace(/\b\X\b/g, "<font color=red>X</font>"));
        $(this).html($(this).html().replace(/\b\y\b/g, "<font color=red>y</font>"));
        $(this).html($(this).html().replace(/\b\Y\b/g, "<font color=red>Y</font>"));
    });
});

http://jsfiddle.net/fno9d6wz/