http://james.padolsey.com/snippets/regex-selector-for-jquery/
A while ago I published an article explaining the utter awesomeness of extending jQuery’s filter selectors. Building on that here’s something new; a regular expression selector. jQuery’s current attribute selectors (CSS3) do allow basic regex notation but no where near as much as this:
:regex
jQuery.expr[':'].regex = function(elem, index, match) { |
Usage
It’s pretty simple to use, you need to pass an attribute and a regular expression to match against. The regular expression must be in non-literal notation; so replace all backslashes with two backslashes (e.g. ^\w+$
-> ^\\w+$
).
// Select all elements with an ID starting a vowel: |
Note: All searches are case insensitive; you can change this by removing the ‘i’ flag in the plugin.
This plugin also allows you to query CSS styles with regular expressions, for example:
// Select all elements with a width between 100 and 300: |
Additionally it allows you to query data strings added to elements via jQuery’s ‘data’ method:
// Add data property to all images (just an example); |
Have fun!