如何删除除javascript之外的所有文本?

时间:2014-10-29 16:45:48

标签: javascript regex

我试图删除除javascript中的一个文本之外的所有文本

这个想法就是做

之类的事情
//retrieve something like "cnode_72 cnode_1 layout_1  ui-datepicker-week-end "
// "ui-datepicker-week-end" is not necessary always present
var classes= jQuery("someelement").attr("class"); 

classes = classes.replace(/(?!ui-datepicker-week-end)/,'');

预期的输出是:

ui-datepicker-week-end

1 个答案:

答案 0 :(得分:4)

Javascript(根据问题)

呃......可能会遗漏一些东西,但是怎么样:

classes = "ui-datepicker-week-end";

如果该文本不在原始字符串中,因此如果它不在那里你就不想添加它,那么试试这个:

if(classes.indexOf("ui-datepicker-week-end") == -1)
    classes = "";
else
    classes = "ui-datepicker-week-end";

JQuery(根据评论中的要求)

如果出于某种奇怪的原因你正在使用jQuery("...").attr("class")但没有提及,那就试试这个:

jQuery("...").removeAttr("class").addClass("ui-datepicker-week-end");

或条件:

if(jQuery("...").hasClass("ui-datepicker-week-end"))
    jQuery("...").removeAttr("class").addClass("ui-datepicker-week-end");
else
    jQuery("...").removeAttr("class");

Here is a working example