Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
ModSecurity 2.5

You're reading from  ModSecurity 2.5

Product type Book
Published in Nov 2009
Publisher Packt
ISBN-13 9781847194749
Pages 280 pages
Edition 1st Edition
Languages

Table of Contents (17) Chapters

ModSecurity 2.5
Credits
About the Author
About the Reviewers
1. Preface
1. Installation and Configuration 2. Writing Rules 3. Performance 4. Audit Logging 5. Virtual Patching 6. Blocking Common Attacks 7. Chroot Jails 8. REMO 9. Protecting a Web Application Directives and Variables Regular Expressions Index

Alternation


Sometimes you want to match one of several phrases. For example, maybe you want to match against Monday written in one of several languages. The pipe character | can be used for this purpose, in the following manner:

Monday|Montag|Lundi

This regex matches either one of Monday, Montag, and Lundi. The pipe character is what makes each of the words an alternative—it can be thought of as an "or" construct if you are familiar with programming.

So how far does alternation reach? In the regex I remember the day, it was a Monday|Montag|Lundi, does the first alternative refer to Monday, it was a Monday, or something else? The answer is that the first alternative will be the entire first part of the sentence, namely I remember the day, it was a Monday.

This is obviously not what we want from this regex, so we need a way to constrain what the alternation matches. This is done by using parentheses, in the following way:

I remember the day, it was a (Monday|Montag|Lundi)

The parentheses in this regex make sure that the alternation only applies within the parentheses, so the first alternative will be restricted to Monday and not anything without the parentheses. Similarly, the last alternative will be Lundi only and will not include anything following it.

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €14.99/month. Cancel anytime}