Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery javascript removeClass通配符,不太具体的模式_Jquery_Regex_Wildcard - Fatal编程技术网

Jquery javascript removeClass通配符,不太具体的模式

Jquery javascript removeClass通配符,不太具体的模式,jquery,regex,wildcard,Jquery,Regex,Wildcard,在元素中,我有: <span class="fa fa-address-book fa-user fa-4x fa-5x fa-lg"></span> 我有很多问题。我做错了什么 我的朋友: 您可以尝试使用这个正则表达式,它会删除所有在fa-或fa cc后面超过2个字符的子字符串 fa(?:-(?:cc|\w{3,}))+ 说明: fa-按字面意思查找fa (?:-\w{3,})+-在非捕获组中查找-后跟三个或多个单词字符,并将其全部查找一次或多次,以覆盖大小写f

在元素中,我有:

<span class="fa fa-address-book fa-user fa-4x fa-5x fa-lg"></span>
我有很多问题。我做错了什么

我的朋友:


您可以尝试使用这个正则表达式,它会删除所有在
fa-
fa cc
后面超过2个字符的子字符串

fa(?:-(?:cc|\w{3,}))+ 
说明:

  • fa
    -按字面意思查找
    fa
  • (?:-\w{3,})+
    -在非捕获组中查找
    -
    后跟三个或多个单词字符,并将其全部查找一次或多次,以覆盖大小写
    fa通讯簿
    大小写


让我知道这是否适合您。

当您知道要删除的类时,为什么需要wild?请直接使用它为什么不直接使用“removeClass('fa-address-book fa user')?因为(“fa-address-book fa user”)在每个会话中都是随机动态的,请帮助我。删除所有类,然后添加所需的类,如
$(“#demo”)。attr('class','').addClass(“fa-4x fa-5x fa-lg”);
@RenatoRamosPuma很高兴现在一切正常快乐编码Pushpesh Kumar Rajwanshi谢谢,这对我帮助很大,但有一个字体很棒的图标(两个字母的“fa-cc”图标)。我需要删除元素的所有类,除了[fa,fa-lg,fa-2x,fa-3x,fa-4x,fa-5x]@RenatoRamosPuma:好的,如果你需要特别处理
fa-cc
案例,或者如果你有更多类似的案例,我们可以将它们单独包括在内,这样它们也会被删除。最好是在
fa-
之后找到一个两个字母的模式,这样解决方案仍然是通用的,但是如果我们没有找到任何模式,那么它将被删除必须特别包括它们,至少对您当前的案例有效。@RenatoRamosPuma:我已经用新的正则表达式更新了我的答案,并为regex101和JSFIDLE提供了新的演示链接。请看一看,如果您还需要进一步的帮助,请告诉我。如果我找到了最终的解决方案,非常感谢您。
$(".button").click(function(e) {

    var regexp_order = /(^|\s)fa-\S+|(?=fa-4x)|(?=fa-5x)|(?=fa-lg)|(?=fa)/;
    var regexp = new RegExp(regexp_order, "g");

    $("#demo").removeClass (function (index, className) {
        return (className.match (regexp) || []).join(' ');
    });

    var temporal = $("#demo").attr("class");
    $("#result").append(temporal);

});
fa(?:-(?:cc|\w{3,}))+