Opened 9 years ago
Closed 9 years ago
#32878 closed defect (bug) (fixed)
More readable regular expressions for Press This URL's
Reported by: | dd32 | Owned by: | dd32 |
---|---|---|---|
Milestone: | 4.4 | Priority: | normal |
Severity: | normal | Version: | 4.2 |
Component: | Press This | Keywords: | has-patch |
Focuses: | Cc: |
Description
The regular expressions in Press This are hard to read.
The attached patch does (probably among other things)
- Switches to using
!
instead of/
as the delimiter, so that/
doesn't need escaping inline - Removes the escaping of
?
and.
within character maps[.?]
as they don't need escaping there - Adds case-insensitive matching to most expressions, aside from
/wp-includes/
- Removes the usage of
{1}
as a single-character match is implied - Not certain what
preg_match( '/\/ad[sx]{1}?\//', $src )
was supposed to match (/ad/
,/ads/
, and/adx/
? If so, it's not currently matching/ad/
, which this patch changes)
The patch is untested so far, needs to be reviewed to check I didn't miss anything.
Attachments (1)
Change History (5)
Note: See
TracTickets for help on using
tickets.
The patch looks good. We can also make pretty much all groups non-capturing as they are only used to check if matches exist.
We can probably combine
/\/([^\.\/]+[-_]{1})?(spinner|loading|spacer|blank)s?([-_]{1}[^\.\/]+)?\.[a-z0-9]{3,4}/
and/\/(spinner|loading|spacer|blank|rss)\.(gif|jpg|png)/
, as they are pretty close (assuming\.[a-z0-9]{3,4}
is to match image extensions).