MySQL是廣泛使用的關系型數據庫管理系統,其正則表達式支持強大,可以方便地匹配各種數據類型,包括數字。
-- 創建測試表 CREATE TABLE test ( id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, num VARCHAR(20) NOT NULL ); -- 插入數據 INSERT INTO test (num) VALUES ('123'), ('45a'), ('678.90'), ('1.23E+4'); -- 查詢所有數字 SELECT * FROM test WHERE num REGEXP '[[:digit:]]+'; -- 查詢整數 SELECT * FROM test WHERE num REGEXP '^[[:digit:]]+$'; -- 查詢小數 SELECT * FROM test WHERE num REGEXP '^[[:digit:]]+\.[[:digit:]]+$'; -- 查詢科學計數法 SELECT * FROM test WHERE num REGEXP '^[[:digit:]]+(\.[[:digit:]]+)?[Ee][+-]?[[:digit:]]+$';
以上代碼演示了如何使用MySQL正則表達式匹配數字。其中,[[:digit:]]
表示一個數字字符,+
表示出現一次或多次,^
表示匹配字符串的開始,$
表示匹配字符串的結束,\.
表示匹配小數點,[Ee]
表示匹配科學計數法中的e或E,[+-]?
表示匹配一個可選的正負號。