Advanced Regex - Summary
(Page 7 of 7 )
This chapter provided explanations, details, and examples of some of the more challenging tools and concepts in the J2SE regex package. The chapter discussed groups, subgroups, noncapturing groups, greedy qualifiers, positive qualifiers, reluctant qualifiers, positive lookaheads, negative lookaheads, positive lookbehinds, and negative lookbehinds. Finally, the chapter finished with a few tips for optimizing your expressions. The next chapter will introduce some suggestions for working with regular expressions in an object-oriented language such as Java.
FAQs
Q: How do I make a group noncapturing?
A: To make a group noncapturing, insert ?: inside the opening
parenthesis of the group. For example, change (\w) to (?:\w).
Q: Given the expression \w(\d(\w)), what’s the capturing index
of the rightmost subgroup, (\w)? A: Groups are counted from left to right, starting with the opening
parenthesis, and group(0) always refers to the whole regex
pattern. Thus, the capturing index of subgroup (\w) is 2.
Accordingly, the capturing index of (\d(\w)) is group(2).
Q: How is group indexing affected when one of the groups is a
noncapturing group? A: The noncapturing group isn’t counted in any way when group
indexes are calculated.
| DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware. |
|
This article is excerpted from chapter three of Java Regular Expressions Taming the Java.util.regex Engine, written by Mehran Habibi (Apress, 2004; ISBN: 1590591070). Check it out at your favorite bookstore. Buy this book now.
|
|