官术网_书友最值得收藏!

9.2.3 匹配多個字符中的一個

“.”匹配任何單個字符,但如果你想要匹配特定的字符怎么辦?你可以指定用“[”和“]”括起來的字符集,如下:

▼ 輸入

▼ 輸出

▼ 分析

這里使用了正則表達式“[123]Ton”?!癧123]”定義了一個字符集。這里它的意思是匹配1、2或者3,因此“1ton”和“2ton”都匹配并且被返回(這里沒有“3ton”)。

如你所見,“[]”是另一種形式的OR語句,實際上,正則表達式“[123]Ton”是“[1|2|3]Ton”的縮寫,后者具有前者同樣的功能。然而“[]”字符必須定義OR語句搜索的內容。為了更好地理解,看下面的例子:

▼ 輸入

▼ 輸出

▼ 分析

呃,這里出現問題。需要的兩行被檢索到,然而還有多余的其他3行。這是因為MariaDB認為你的意思是'1'或者'2'或者'3ton'。字符“|”應用于整個字符串,除非它被括起來作為集合。

集合也可以取否定,即它們會匹配任何非指定的字符。為了否定字符集,在集合的開頭使用“^”,因此,[123]匹配字符1、2或者3,[^123]匹配任何除了這些字符的字符。

主站蜘蛛池模板: 新沂市| 梁河县| 始兴县| 蒲城县| 介休市| 霸州市| 新龙县| 江源县| 鹤岗市| 广安市| 财经| 赣榆县| 拉孜县| 台中市| 景东| 利津县| 六枝特区| 方正县| 建阳市| 蕲春县| 金堂县| 新邵县| 上栗县| 黔南| 水富县| 鹰潭市| 长海县| 剑阁县| 金山区| 墨江| 红安县| 密云县| 周宁县| 铜川市| 称多县| 荣昌县| 衢州市| 雅江县| 高雄市| 平湖市| 信阳市|