PoE Regex Guide: Stash Search Patterns for Maps and Gear
Path of Exile's stash search understands a useful subset of regular expressions. Here's the syntax that works, copy-ready patterns for maps and gear, and the mistakes that make a search silently match nothing.
In this guide
Path of Exile's stash and vendor search boxes do much more than plain text matching. Since patch 3.14 they accept regular expressions, which means one search string can highlight every map above 70% quantity with no Thorns mod, or every pair of boots with 30% or more movement speed, across a whole tab at once.
This guide covers the syntax that actually works in PoE 1, some patterns you can paste straight in, and the mistakes that make a search quietly match nothing.
How the search reads an item
The search runs against the item's tooltip text, the same text you get when you press Ctrl+C on an item. Two details matter more than anything else:
- It's case-insensitive.
Tailwind,tailwindandTAILWINDall match the same thing. - It checks each line separately. A single pattern can match within one line, like
Item Quantity: +84% (augmented), but it can't span two lines.
The syntax that works
tailwindmatches any line containing "tailwind"."movement speed"uses quotes to group a phrase that contains spaces."life" "resist"is two separate terms, and an item has to match all of them (AND)."tailwind|elusive"uses|inside a term to mean either one (OR)."!thorns"has a leading!, which hides items that match..is any one character and.*is any run of characters.\dis any digit, and[7-9]is any digit from 7 to 9.\+is a literal plus sign. A bare+is a regex operator.(a|b)groups alternatives, and{3}means exactly three of whatever comes before it.^anchors a pattern to the start of a line.
Lookaheads and other advanced regex features aren't reliably supported, so keep patterns simple.
Patterns worth keeping
Maps with at least 70% item quantity:
"quantity: \+([7-9]\d|\d{3})%"
[7-9]\d matches 70 through 99, and \d{3} catches 100% or more. The escaped \+ matches the plus sign in
Item Quantity: +84%.
Maps with at least 30% pack size:
"pack size: \+([3-9]\d|\d{3})%"
Hide maps with mods your build can't run (adjust the words to your own list). Since 3.29 the old reflect map mods are Thorns mods instead, so search for that word:
"!thorns|cannot regen"
Combine them with spaces, and a map has to pass every term:
"quantity: \+([7-9]\d|\d{3})%" "!thorns|cannot regen"
Boots with 30% or more movement speed:
"(^| )([3-9]\d|\d{3})% increased movement"
Gear with 80 or more maximum life:
"\+([89]\d|\d{3}) to maximum life"
Mistakes that match nothing
- Forgetting to escape
+. A leading bare+has nothing to quantify and can make the pattern invalid. Write\+84%. - Leaving spaces outside quotes.
movement speedwithout quotes is two separate terms. That usually still works, but it can match "movement" and "speed" on two different lines. - Searching for text that isn't on the item. Totals like "total elemental resistance" come from trade sites and item-parsing tools, not the tooltip. Search for the real lines instead.
- Wording from an old league. Mod text changes between patches. If a pattern that used to work matches nothing, Ctrl+C the item and compare the exact wording.
- Going over the length limit. The search box caps how long a string can be. Keep patterns short. Match a
distinctive fragment like
tailwrather than a full sentence.
Let a tool write it
Hand-writing regex gets old fast. poe.re builds map, vendor and flask strings from checkboxes.
Exiled Bench does the same thing from its mod database. On its Maps page, as you set quantity, rarity and pack-size thresholds and wanted or unwanted mods, it builds the matching stash-search string live, ready to copy into the game. Every mod you target on the other pages becomes a pattern that accepts the tier you picked or better, so a low roll of the right mod doesn't count as a hit. See efficient map rolling for that workflow, or how the engine works.
Without the app, the free map regex builder on this site makes the same map string in your browser, from the same mod list, for an English or a Russian client.
Sources
Related guides
Efficient Map Rolling in PoE 3.29: Thresholds, Endings and 8-Mod Maps
Since Mirage, maps drop by tier and ordinary Cartographer's Chisels no longer drop; in 3.29 reflect became Thorns. Here's a threshold-based system for rolling maps in the current league, and how to hand the rolling to a tool.
Choose a Crafting Base: Item Level, Donors and Finished Gear
A donor that can roll one mod is not automatically a good endgame base. Choose item level, defence type, implicit and fracture for the complete craft.
Enduring Composure: Small Armour Cluster Craft
Make a two-passive Enduring Composure armour cluster. Choose the right enchant and item level, automate the magic roll, then decide whether to Regal.
Spend fewer clicks on preparation
Roll one base or a stash tab, including Regal and capped Exalt stages. Set your targets and limits; inspect the result at your chosen checkpoint.