Regex Pal

Dan's Tools

Match local (relative) URLs in CSS, link, script, and img tags

This regex will match all relative URLs defined in a CSS file or link, script, and img tags. The regex will ignore any remote URLs or DATA URLs - but that could be modified easily to include one or the other or both. You should be able to read the regex and figure out where to make that change. If you want to allow both remote and data URLs, then remove the entire negative lookahead section, defined by this pattern: (?! ... )

Comments

Top Regular Expressions

Cheat Sheet

Character classes
. any character except newline
\w \d \s word, digit, whitespace
\W \D \S not word, digit, whitespace
[abc] any of a, b, or c
[^abc] not a, b, or c
[a-g] character between a & g
Anchors
^abc$ start / end of the string
\b word boundary
Escaped characters
\. \* \\ escaped special characters
\t \n \r tab, linefeed, carriage return
\u00A9 unicode escaped ©
Groups & Lookaround
(abc) capture group
\1 backreference to group #1
(?:abc) non-capturing group
(?=abc) positive lookahead
(?!abc) negative lookahead
Quantifiers & Alternation
a* a+ a? 0 or more, 1 or more, 0 or 1
a{5} a{2,} exactly five, two or more
a{1,3} between one & three
a+? a{2,}? match as few as possible
ab|cd match ab or cd