Regular Expressions for Java programmers |
Regular Expressions are invaluable to today's tasks. The obvious proof is that after many years that they were only available in a relatively small set of languages now they are first class citizens in most of the modern high-level languages such as Java, all the .NET family (e.g. C++, C# and VB.NET), Python, Ruby, Tcl, Javascript, PHP and of course Perl.
Audience
Objectives
Course format
Prerequisite
While the implementation of Regular Expressions is different in the various languages and tools they have a large common part. In this course first we'll learn the generic approach to regular expressions and then dive into the specific issues related to regex in Java. In addition we'll look at how to use regular expressions in the tools we use, such as editors, IDEs, etc. During the class we will explore the algorithm used internally by the Java regex engines. Understanding this algorithm will allow us to build better regular expressions, to know which one of the matches will be found among several possibilities, and which regexes will be faster than others. During this discussion we'll pause to discuss practical applications and observe common mistakes. We'll examine the frequently misunderstood concept of greed, and how does it work combined with eagerness. We will look at examples for applying regular expressions on Unicode characters with a focus on how to deal with Hebrew text. We'll also look at a number of examples for solving common problems.
Syllabus
|