Reg Expression包括单词列表

时间:2013-10-03 19:58:58

标签: javascript regex

我已经从第一个大字母主题的一些研究中构建了这个脚本。它的作用是允许将一个第一个字母的span类应用于特定的类(页面标题),并且它的工作非常好 - 即用span类的第一个字母包装每个第一个字母,这样我就可以使用CSS更大标题中每个单词的第一个字母(我已经通过CSS为该类启用了capitilize)。我一直试图完成的是以某种方式在正则表达式中添加单词,缩写或其他3-4个字母的术语列表,以便此列表中的任何单词都包含一个首字母。这是我到目前为止的代码。我已经寻找了一个解决方案,但是RegEx笨拙地试图弄清楚它们。感谢

var elements = document.getElementsByClassName("entry-title")
    for (var i=0; i<elements.length; i++){
        elements[i].innerHTML = elements[i].innerHTML.replace(/\b([a-z])([a-  z]+)?\b/gim, "<span class='first-letter'>$1</span>$2")
    }

这是我开始的小提琴http://jsfiddle.net/5Sgve/38/

2 个答案:

答案 0 :(得分:0)

如果你有一个单词数组,abbr words = ["share", "link" ... ],你得到一个这样的正则表达式regex = new RegExp("([a-zA-Z])(" + words.join("|") + ")", "gi");

请参阅此jsfiddle:http://jsfiddle.net/5Sgve/

答案 1 :(得分:0)

好的,我明白了。谢谢您的帮助!对于有兴趣完成此任务的人来说,这是更新的小提琴。

@ jsfiddle.net/5Sgve/421 /