RegEx如果有一个禁用词

时间:2016-06-11 14:14:04

标签: regex

对于几个示例字符串,如果括号中包含禁用字,我想剥去字符串的结尾。

示例字符串列表:

Test House (selled)
Seahouse (selled)
Motorbike (unconfirmed)
Bike (very good)

我列出了禁词:' selled'和未经证实的'

目前,我有一个javascript函数会返回此列表:

Test House
Seahouse
Motorbike
Bike (very good)

该函数只使用带有两个捕获组的简单正则表达式:

( \(([a-z0-9\- ]+)\))$

...如果组2等于禁止的单词,则我从字符串中删除组1。

我想知道是否有更简洁的方法来使用正则表达式?

1 个答案:

答案 0 :(得分:1)

我认为你的这种方式比它需要的更难。

/*Mixins*/
=font-size($px){
    font-size: calc($px/13)em;
}

=transition{
    -webkit-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

=border-radius($radius) {
    -webkit-border-radius: $radius;
    -moz-border-radius: $radius;
    border-radius: $radius;
}

=text-clamp($line) {
    word-break: break-word;
    word-wrap: break-word; 
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    line-height: normal;        
    -webkit-line-clamp: $line; 
    line-height: 18px;
    height: calc(18*$line)px;
}

/* CSS */
.blog_options{
    display: block;
    position: absolute;
    width: 170px;
    right: 0;
    border: 1px solid $theme_border_color;
    background: #FFF;
    display: none;
    box-shadow: 0px 0px 21px -5px #ccc;


    &.blog_options_show{
        display: block;
    }

    & > a{
        padding: 10px 15px;
        display: block;
        +font-size(13);
        border-bottom: 1px solid $theme_border_color;
        color: $theme_font_color !important;

        &:hover{
            background: $theme_link_color_hover;
            color: #FFF !important;
        }

        i.fa{
            +font-size(14);
            margin-right: 5px;
        }

        &:last-of-type{
            border-bottom: 0;
        }

        &.icon_blog_delete{
            color: #c31919 !important;
            background: #f6f6f6 !important;
            i.fa{
                color: #c31919;
            }
        }
    }
}
var d = $("div"),
    str = d.html();

str = str.replace(/ \((selled|unconfirmed)\)/g, "");

d.html(str);