
Regex in PoE 2 is the difference between finding what you need in two seconds and dying inside at a vendor screen for ten minutes. Here is how it actu
Regex: short for Regular Expression: is a text-pattern matching system. In Path of Exile 2, it powers the search bar found in stash tabs, vendors, the passive tree, and the atlas tree. Press Ctrl-F to open it anywhere. Type something. Things get highlighted. Congratulations, you are already doing it.
The PoE 2 stash tab search does not need perfect words. Typing resist catches every resistance modifier across all your tabs. That alone is worth the thirty seconds it takes to learn this. The rest is just doing more of the same with less typing.
|
Operator |
What it does |
Example |
|
" " |
Wraps your full search string |
"sbo|ent sp" |
|
| |
OR: matches either term |
"life|mana" |
|
! |
Exclude: hide matching items |
"!quiver" |
|
space |
Separate independent search blocks |
"!quiver" "sbo|ent sp" |
The 50-character limit per search box is your real enemy. Shorten everything. Crossbow wastes four characters you could spend on another affix. sbo works fine and you get seven characters back to spend on something useful.
Typing bow to find Crossbows will also highlight every regular Bow in the vendor. You have been warned. Use sbo.
The stash tab search is where item filter regex pays off most. You are looking at hundreds of items across multiple tabs. Typing "m Li" surfaces every item with flat Maximum Life. Typing "m En" finds Energy Shield gear. Combine them:
"m Li|m En|resi"
That three-token string covers the majority of defensive affixes worth caring about. Done in eleven characters.
Useful vendor loot search string for a crossbow character during leveling:
"sbo|ent sp|to att": Crossbows, Movement Speed, Added Damage to Attacks
"!quiver" "sbo|ent sp|to att": same, minus quivers stealing the spotlight
The exclamation block runs as a separate search group. Multiple quoted blocks separated by a space all apply simultaneously. The item must satisfy all blocks to be highlighted.
Rolling Waystones without a waystone mod filter is how players accidentally run maps that delete them. Build a rejection string of modifiers your character cannot handle and paste it before committing to any map.
"!ele ref|!no regen|!less recov": exclude elemental reflect, no regen, less recovery
For juicing: target maps with high rarity and pack size. A general-purpose map modifier regex that catches useful rolls:
"([3-9].|1..)%.*rar|quan|([3-9].)%.*ed.pa"
This pattern is advanced syntax. It matches 30%+ increased rarity, quantity keywords, and 30%+ pack size references. You do not need to understand it. You need to copy it from poe2.re and paste it. The site was built precisely because manually writing this is nobody's idea of a good time.
Tool
poe2.re generates complex regex strings for Waystone rolling and stash filtering. Use it instead of suffering.
PoE 2's search supports a handful of advanced regex syntax operators beyond plain text. Square brackets define character ranges. Parentheses group expressions. The dot matches any single character.
|
Pattern |
Matches |
|
[0-9] |
Any single digit |
|
[3-9][0-9] |
Numbers 30–99 |
|
. |
Any single character |
|
.* |
Any sequence of characters |
|
ilvl:20 |
Items with item level exactly 20 |
|
ilvl:[2-3][0-9] |
Items with ilvl 20–39 |
|
dex:\s30 |
Items requiring exactly 30 Dexterity |
The ilvl: prefix is a built-in property filter. str:, dex:, and int: work the same way for attribute requirements, but need a \s or quoted space before the number. None of this is documented in-game. You are welcome.
Both the passive skill tree and Atlas passive tree support the same search bar. Type a keyword: life, proj, crit: and matching nodes light up. Press Enter to jump between results sequentially. This is faster than dragging a 1000-node tree with a mouse, which is an activity nobody should be doing voluntarily.
Combine with exclusion: searching "life" "!flask" surfaces life nodes while hiding anything tied to flasks. Useful when your build has no flask investment and you are tired of looking at those nodes.
Nobody wants to retype "([3-9].|1..)%.*rar..(?!ch)|quan" from memory. Save your strings. Three valid methods:
Copy with Ctrl-C, paste into the search box with Ctrl-V. The character limit is currently 50, expected to be raised to 250 in a future patch, like it eventually was in Path of Exile 1. Until then, abbreviate everything.
|
Use Case |
Regex String |
|
Crossbow leveling (vendor) |
"sbo|ent sp|to att" |
|
Same, no quivers |
"!quiver" "sbo|ent sp|to att" |
|
Defensive affixes (stash) |
"m Li|m En|resi" |
|
Juicy waystone mods |
"([3-9].|1..)%.*rar|quan" |
|
Dangerous waystone mods |
"ele ref|no regen|less recov" |
|
Items with quality |
"quality" |
|
High ilvl items (60+) |
ilvl:[6-9][0-9] |
|
Flat life or ES (stash) |
"m Li|m En" |

Regex in PoE 2 is the difference between finding what you need in two seconds and dying inside at a vendor screen for ten minutes. Here is how it actu

Regex in PoE 2 is the difference between finding what you need in two seconds and dying inside at a vendor screen for ten minutes. Here is how it actu

Regex in PoE 2 is the difference between finding what you need in two seconds and dying inside at a vendor screen for ten minutes. Here is how it actu

Currently 50 characters. Expected to increase to 250 in a future patch.
Add ! before the term in its own quoted block: "!quiver".
Use poe2.re: built specifically for Waystone and stash filtering.
Yes. Use ilvl:60 for exact match or ilvl:[6-9][0-9] for a range.
Search a keyword in the tree's search bar, then press Enter to jump between matching nodes.


GTA 6, new seasons, major updates — get ready to dominate from day one