正則表達式,又稱規則表達式,英文名爲Regular Expression,在代碼中常簡寫爲regex、regexp或RE,是計算機科學的一個概念。正則表一般被用來檢索、替換那些符合某個模式(規則)的文本。java
正則表達式是對字符串(包括普通字符(例如,a 到 z 之間的字母)和特殊字符(稱爲「元字符」))操做的一種邏輯公式,就是用事先定義好的一些特定字符、及這些特定字符的組合,組成一個「規則字符串」,這個「規則字符串」用來表達對字符串的一種過濾邏輯。正則表達式是一種文本模式,模式描述在搜索文本時要匹配的一個或多個字符串。許多程序設計語言都支持利用正則表達式進行字符串操做。例如,在Perl中就內建了一個功能強大的正則表達式引擎。正則表達式這個概念最初是由Unix中的工具軟件(例如sed和grep)普及開的。正則表達式一般縮寫成「regex」,單數有regexp、regex,複數有regexps、regexes、regexen。關於在現實工做場景中,正則表達式常被用於進行輸入驗證、內容檢索、字符串替換等工做。我的認爲正則表達式應該算程序員的必修課之一,因爲它應用的很是之普遍,並且在各類語言基本上均可以使用,更重要的是在 Linux 或 Unix 系統下能靈活使用正則表達式也可大大提升工做效率,因此學習它是很是保值的。程序員
正則表達式與正則表達式引擎:less
直觀而言正則表達式是一段負責正則表達式語法的字符串,而負責處理這段表達式的程序,就是正則表達式引擎。表達式引擎由語言或環境提供,做爲開發者並不直接面對它。咱們只須要編寫表達式,而後交給表達式引擎進行處理就能夠了。不一樣語言或環境會以不一樣方式爲咱們使用正則表達式提供支持,就拿Java語言來講,咱們能夠在 String.replaceAll() / String.split() / String.matches() 上直接使用正則表達式,又或者經過 java.util.regex 包中提供的類來使用正則表達式。工具
不一樣環境的正則表達式寫法與支持或多或少會有一些差異,不過這你能夠徹底不須要小心,由於這並不影響你使用正則表達式,近代的表達式引擎都很是相似。Perl 5 類型的引擎應該算應用最爲普遍的引擎。學習
特色:網站
課時列表:阿里雲
更多精品技術課程:設計
阿里雲大學官網(阿里雲大學 - 官方網站,雲生態下的創新人才工場)regexp