프로그래밍 언어/jQuery, ajax

jQuery selector 정규식

Rateye 2021. 8. 30. 10:50
728x90
반응형
질문 : jQuery 선택기 정규식

jQuery 선택기와 함께 와일드 카드 또는 정규식 (정확한 용어에 대해서는 확실하지 않음) 사용에 대한 문서를 찾고 있습니다.

나는 이것을 직접 찾았지만 구문 및 사용 방법에 대한 정보를 찾을 수 없습니다. 구문에 대한 문서가 어디에 있는지 아는 사람이 있습니까?

편집 : 속성 필터를 사용하면 속성 값의 패턴을 기반으로 선택할 수 있습니다.

답변

James Padolsey는 정규식을 선택에 사용할 수있는 멋진 필터를 만들었습니다.

div 가 있다고 가정합니다.

<div class="asdf">

Padolsey의 :regex 필터는 다음과 같이 선택할 수 있습니다.

$("div:regex(class, .*sd.*)")

또한 선택자에 대한 공식 문서를 확인하십시오.

jQuery.expr[':'] 는 이미 더 이상 사용되지 않으며 최신 버전의 jQuery에서 구문 오류를 렌더링하므로 다음은 jQuery 3+ 구문에 맞게 조정 된 코드입니다.

jQuery.expr.pseudos.regex = jQuery.expr.createPseudo(function (expression) {
    return function (elem) {
        var matchParams = expression.split(','),
            validLabels = /^(data|css):/,
            attr = {
                method: matchParams[0].match(validLabels) ?
                    matchParams[0].split(':')[0] : 'attr',
                property: matchParams.shift().replace(validLabels, '')
            },
            regexFlags = 'ig',
            regex = new RegExp(matchParams.join('').replace(/^\s+|\s+$/g, ''), regexFlags);
        return regex.test(jQuery(elem)[attr.method](attr.property));
    }
});
출처 : https://stackoverflow.com/questions/190253/jquery-selector-regular-expressions
728x90
반응형