Book Image

Java 9 Regular Expressions

By : Anubhava Srivastava
Book Image

Java 9 Regular Expressions

By: Anubhava Srivastava

Overview of this book

Regular expressions are a powerful tool in the programmer's toolbox and allow pattern matching. They are also used for manipulating text and data. This book will provide you with the know-how (and practical examples) to solve real-world problems using regex in Java. You will begin by discovering what regular expressions are and how they work with Java. This easy-to-follow guide is a great place from which to familiarize yourself with the core concepts of regular expressions and to master its implementation with the features of Java 9. You will learn how to match, extract, and transform text by matching specific words, characters, and patterns. You will learn when and where to apply the methods for finding patterns in digits, letters, Unicode characters, and string literals. Going forward, you will learn to use zero-length assertions and lookarounds, parsing the source code, and processing the log files. Finally, you will master tips, tricks, and best practices in regex with Java.
Table of Contents (15 chapters)
Title page
About the Author
About the Reviewer
Customer Feedback
Free Chapter
Getting Started with Regular Expressions

Lookahead assertions

Positive and negative lookahead assertions are zero-width assertions that allow for certain regular expression-based checks to be performed on the text that is ahead (or on the right-hand side) of the current position. The regex engine holds on to the current position after evaluating the lookahead pattern. We can chain multiple lookahead expressions one after another, but the regex engine does not move the control after checking all the lookaheads. Lookahead assertions can help solve some complex regex problems, which are not possible or are very difficult to solve without lookahead support. The Java regular expression engine, like many other regular expression flavors, allows the use of variable-length quantifiers such as * and + in lookahead patterns.

There are two types of lookahead assertions: positive lookahead and negative lookahead.

Positive lookahead

A positive lookahead assertion asserts true if the pattern inside the lookahead is matched.

The following is its...