Anchors
Sometimes you want a match to be meaningful only at an edge: the start or the end, or maybe a word in the middle. You might even want to define your own edge—something is important only when it’s next to something else. Ruby’s regular expression engine lets you do all of these things, as well as match only when your match is not against an edge. Table C-4 lists common anchor syntax.
Table C-4. Regular expression anchors
Syntax | Meaning |
|---|---|
| When at the start of the expression, means to match the expression only against the start of the target (or a line within the target, when multiline matching is on). |
| When at the end of the expression, means to match the expression only against the end of the target (or the end of a line within the target, when multiline matching is on). |
| When at the start of the expression, means to match the expression only against the start of the target string, not lines within it. |
| When at the end of the expression, means to match the expression only against the end of the target string, not lines within it. |
| Marks a boundary between words, up against whitespace. |
| Marks something that isn’t a boundary between words. |
| Lets you define your own boundary, by limiting the
match to things next to |
| Lets you define your own boundary, by limiting the
match to things that are not next to
|
These make a little more sense if you see them in action. For example, if you only want to match “The” when it’s at the start ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access