讀古今文學網 > 精通正則表達式(第3版) > 第8章 Java >

第8章 Java

Java

自2002年早期發佈的Java 1.4.0以後,Java就內建了正則表達式包,java.util.regex,它的API毫不複雜(可以稱得上簡單),提供了強大而有創意的功能。對Unicode的支持很棒,文檔很清晰,運行速度也很快。它能夠用來匹配 CharSequence 對象,所以使用起來非常方便。

sjava.util.regex一經發佈就給人留下了深刻印象。它的功能、速度和正確性都達到了非常高的水平,尤其是對初次發佈的軟件來說,更是如此。Java 1.4的最終版本是1.4.2。寫作本書時,Java 1.5.0(也叫Java 5.0)已經發佈,而Java 1.6.0(也叫Java 6.0)已經發佈了第二個beta版本。本書針對的是Java 1.5.0,不過我會在合適的時候提到它與Java 1.4.2或Java 1.6.0之間的重要差異(這些差異的總結在本章末尾☞401)(注1)。

與之前各章的聯繫

在閱讀本章之前,我必須說明,這一章不會重複第1 章到第6 章介紹的所有知識。有些只關心Java的讀者可能會直接從這章開始閱讀,我希望他們不要錯過前言和開頭幾章的內容:第1、2、3 章介紹了正則表達式的基本概念、特性和技巧,第4、5、6 章包含了理解正則表達式的關鍵知識,它們可以直接應用到java.util.regex中。開頭幾章講解的重要概念包括NFA引擎的工作原理、匹配優先性、回溯和效率。

表8-1:方法名索引(按字母、頁碼排序)

這張表格供簡要查詢,詳細的API講解從第371頁開始。

在這裡我還是要強調,儘管第367頁的表格查閱起來很方便,第3章第114和第123頁的表格也是如此,但本書的目的不是作為參考手冊,而是「掌握」正則表達式的詳細教程。前面幾章已經出現過 java.util.regex 的例子(☞81、95、98、217、235),本章在講解各種類及其實際應用時會給出更多的例子。不過,首先還是來看Java支持的正則流派,以及對應的修飾符。