jquery找到没有更多或更少的确切字符串

liz*_*liz 5 regex jquery

我有一些来自痕迹的文本,我用它来打开页面上的菜单项.例如,说出来bctext = 'pasta'.

我想以"面食"为目标,但不要说"yadda yadda yadda pasta".只有单个单词"pasta"的实例应该匹配,或者如果bctext是短语,那么它只会找到确切的短语.

这是我到目前为止:

$('ul#accordion a:contains(' + bctext + ')')
Run Code Online (Sandbox Code Playgroud)

但当然,这会发现"yadda yadda pasta".

我得到bctext以下内容:

var bctext = $('#CategoryBreadcrumb ul li:last-child').prev().children().text();
Run Code Online (Sandbox Code Playgroud)

然后,我使用以下内容编辑菜单:

$('ul#accordion a:contains(' + bctext + ')').parent()
                                            .addClass('special')
                                            .children('ul')
                                            .css('display','block'); 
Run Code Online (Sandbox Code Playgroud)

我想要的是什么?

Thi*_*ter 14

$('ul#accordion a').filter(function() {
    return $(this).text() == bctext;
}).parent().addClass('special').children('ul').css('display','block');
Run Code Online (Sandbox Code Playgroud)

:contains()无论如何都不是本地选择器,因此使用.filter()自定义回调不会有任何性能缺陷.