Meta Character Quick Reference |

Here's a quick list of all Proxomitron's special characters. See Matching Rules for more detailed explanations.

Matching meta characters

* | match a string of any characters.
? | match any single character.
[abc] | match any single character listed in the brackets.
[^a-z] | match any single character not listed in the brackets.
[#x:y] | numeric range match. Supports negative numbers.
" " | (a Space) Always matches but also consumes any whitespace.
\s | match string of whitespace only.
\w | match any number of non-space characters except ">".
\t | matches a single tab character.
\r | matches a single carriage return character.
\n | matches a single newline character.
\0-9 | put match into a variable - works like "*" unless following stuff in parentheses: "( ... )\1"
\# | append match on to replacement stack.
& | AND function.
&& | AND-AND (like AND but limits scope of second part).
| | OR function.
(^...) | NOT function.
(...) | group a sub-expression. Negate with "(^ ... )"
+ | repeat previous match until there are no more left.
++ | same as '+' except matches to up to the point where what follows is true.
+{5} | the + or ++ pattern run will match only 5 repetitions.
+{2,7} | the + or ++ pattern run will match 2 to 7 repetitions.
+{3,*} | the + or ++ pattern run will match 3 or more repetitions.
\ | escape any meta character's special meaning.
= | magic equal - absorbs leading/trailing spaces.
" | magic quote - matches double or single quote.
' | smart ending quote - use to deal with nested quotes.
<start> | insert this at the beginning of a page
<end> | insert this at the end of a page

Special Matching Commands

(m=matching value r=replacement text b=boolean value)

$ADDLST(ListName, r) | add a new item to a blocklist
$ADDLSTBOX(ListName, [title,] r) | prompt user for item to add to blocklist
$ALERT(r) | display a pop-up alert message
$ASK(List, List, prompt, r [,r]) | ask user if item should be filtered
$AV(m) | match an attribute's value excluding any quotes
$AVQ(m) | match an attribute's value including any quotes
$CON(x,y,[z]) | test current connection number
$CONFIRM(r) | display pop-up Yes/No dialog
$DTM(fmt) | insert current date, time or connection number
$ESC(r) | escape special characters in a string to make it URL safe (reverse of $UESC)
$FILE(filename) | Insert a file into the replacement
$FILTER(b) | force filtering or not
$IHDR(header: m) | match input headers
$INEST(start,[m],end) | like nest, but assumes inital tag already matched
$JUMP(url) | redirect URL (non-transparent)
$KEYCHK(keycodes) | Test for a user keypress
$LOCK() | Lock filter for synchronization between pages
$LOG(r) | add text to log window
$LST(listname) | include a blocklist in any matching expression
$NEST(start,[m],end) | find pair of nested tags
$OHDR(header: m) | match output headers
$RDIR(url) | redirect URL (transparent)
$RESP(match) | Match on a web server's response status code
$SET(0=r) | set a positional variable (\0-9 or \#) to a specific value.
$SETPROXY | select a particular proxy for connection .
$STOP() | turn filter off for rest of page
$TYPE(type value) | check type of page being processed
$UESC(r) | remove hexidecimal "%xx" style URL escapes
$UNLOCK() | Unlock a $LOCK'ed filter (optional)
$URL(m) | match a the URL inside the matching portion of a filter.
$USEPROXY(b) | turn external proxy on or off for connection
$WESC(r) | escape any wildcards in text

Replacement Text Escapes

\0-9 | Insert a variable into the replacement text.
\# | Inserts one item from the replacement stack each time it is used - first in first out
\@ | Insert all the items in the replacement stack.
\\ | Insert a single backslash.
\a | Insert any anchor text from a URL (anything following a "#").
\d | Insert The Proxomitron base directory in "file://" URL format.
\h | Insert the host portion of the URL.
\k | Kills the current connection.
\p | Insert the path portion of the URL.
\q | Insert any query string from a URL (anything following a "?").
\u | Insert the full URL of the current web page.
\x | Insert URL command prefix if defined.

Return to main index