1. 程式人生 > 實用技巧 >PHP遊戲開發之大家一起來玩泡泡堂

PHP遊戲開發之大家一起來玩泡泡堂

■正則表示式是一一個特殊的字元序列,利用事先定義好的一些特定字元以及它們的組合組成一 一個 “規則”,檢查一個字串是否與這種規則匹配來實現對字元的過濾或匹配。正則表示式是字串處理的有力工具,但是並不是Python獨有的,其他語言也有。Pytbon中,re模組提供了正則表示式操作所需要的功能。
■大多數字母和字元一般都會和自身匹配。如果在字串前面加了,表示對字元申不進行轉義。有些字元比較特殊,它們和自身並不匹配,而是表明應和一些特殊的東西匹配,或者會影響重複次數。這些特殊的字元我們稱之為元字元。
一、下面來介紹一些常用的正則表示式元字元

  • “.”:表示除換行符以外的任意字元
    在這裡插入圖片描述

  • “【】”指定字符集在這裡插入圖片描述

  • “^”:匹配行首,匹配符號後的字元開頭的字串在這裡插入圖片描述
    二、正則表示式的基礎語法

  • 匹配不同型別的字元
    在這裡插入圖片描述

  • 定位控制字元
    在這裡插入圖片描述

  • 指定重複字元
    在這裡插入圖片描述

  • 特殊字元轉義序列
    在這裡插入圖片描述
    正則表示式字元全集(侵權聯刪)在這裡插入圖片描述目前為止,我們僅適用正則表示式查詢字串,正則表示式也可用於修改字串,使用下面的方法:
    1)split() 從RE匹配的地方將字串分解為字串列表; 2)sub() 找到RE匹配的所有子字串,並使用不同的字串取代它們; 3)subn() 和sub做的事相同,但是返回新字串和替換的次數。

一個正則表示式(或RE)指定了一集與之匹配的字串;模組內的函式可以讓你檢查某個字串是否跟給定的正則表示式匹配(或者一個正則表示式是否匹配到一個字串,這兩種說法含義相同)。

正則表示式可以拼接; 如果 A 和 B 都是正則表示式, 那麼 AB 也是正則表示式。 通常, 如果字串 p 匹配 A 並且另一個字串 q 匹配 B, 那麼 pq 可以匹配 AB。除非 A 或者 B 包含低優先順序操作,A 和 B 存在邊界條件;或者命名組引用。所以,複雜表示式可以很容易的從這裡描述的簡單源語表示式構建。

正則表示式可以包含普通或者特殊字元。絕大部分普通字元,比如 ‘A’, ‘a’, 或者 ‘0’,都是最簡單的正則表示式。它們就匹配自身。你可以拼接普通字元,所以 last 匹配字串 ‘last’.

有些字元,比如 ‘|’ 或者 ‘(’,屬於特殊字元。 特殊字元既可以表示它的普通含義, 也可以影響它旁邊的正則表示式的解釋。

重複修飾符 (, +, ?, {m,n}, 等) 不能直接巢狀。這樣避免了非貪婪字尾 ? 修飾符,和其他實現中的修飾符產生的多義性。要應用一個內層重複巢狀,可以使用括號。 比如,表示式 (?:a{6}) 匹配6個 ‘a’ 字元重複任意次數。

匹配字串尾或者在字串尾的換行符的前一個字元,在 MULTILINE 模式下也會匹配換行符之前的文字。 foo 匹配 ‘foo’ 和 ‘foobar’,但正則表示式 foo$ 只匹配 ‘foo’。 更有趣的是,在 ‘foo1\nfoo2\n’ 中搜索 foo.$,通常匹配 ‘foo2’,但在 MULTILINE 模式下可以匹配到 ‘foo1’;在 ‘foo\n’ 中搜索 $ 會找到兩個(空的)匹配:一個在換行符之前,一個在字串的末尾。