Revision: 32196
Updated Code
at September 21, 2010 02:37 by magicrebirth
Updated Code
jQuery.expr[':'].regex = function(elem, index, match) { var matchParams = match[3].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)); } // USAGE // Select all elements with an ID starting a vowel: $(':regex(id,^[aeiou])'); // Select all DIVs with classes that contain numbers: $('div:regex(class,[0-9])'); // Select all SCRIPT tags with a SRC containing jQuery: $('script:regex(src,jQuery)'); // Yes, I know the last example could be achieved with // CSS3 attribute selectors; it's just an example...
Revision: 32195
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at September 21, 2010 02:34 by magicrebirth
Initial Code
jQuery.expr[':'].regex = function(elem, index, match) { var matchParams = match[3].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)); }
Initial URL
http://james.padolsey.com/javascript/regex-selector-for-jquery/
Initial Description
check the original blogpost for more how-to examples
Initial Title
Regex Selector for jQuery
Initial Tags
regex, jquery, filter
Initial Language
JavaScript