Regular Expression匹配相似的字符串

时间:2013-01-30 01:51:05

标签: javascript regex

我试图通过jquery改变模块的类名,现在我有了这个RegEx

/模块 - \ W + / GI

以这种方式使用

//// Removes all module-xxxx classes
var classes = $target[0].className.replace(/module-\w+/gi, '');

直到现在这已经很好了但是我必须改变我的模块类的结构,以便它类似于

<div class="module">
    <div class="module-header">
         <div class="module-header-content module-blue ..."></div>
    </div>
    <div class="module-content"></div>
</div>

......只是意味着可能有其他类名。

我需要更改RegEx,使其仅匹配 module-blue (可以是模块默认,模块绿色,模块 - 无论如何,但始终采用模块的格式 - COLORNAME )也与 module-header-content 不匹配。

jquery选择类名:module-header-content module-blue

1 个答案:

答案 0 :(得分:1)

var classes = $target[0].className.replace(/\bmodule-\w+(?!-)\b/gi, '');

对于单词边界,表达式必须匹配整个module-组,后跟至少一个后跟短划线的字母。

http://jsfiddle.net/ExplosionPIlls/WqbKJ/