首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C++ >> C++ 入門

C++11 regex 常用正則表達式大全

     編輯:C++ 入門

工具函數

bool regex_match(const string& s, const regex& r) {
    return std::regex_match(s, r);
}

常用模式

用途正則說明
純數字^[0-9]*$允許空串,嚴格用 +
純字母^[[:alpha:]]*$區分大小寫
字母數字^[[:alnum:]]*$
整數^[-]?(0|([1-9][0-9]*))$不允許前導零
實數^-?(0|([1-9][0-9]*))\.[0-9]+$必須有小數點
IPv4^((25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)\.){3}(25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)$每段 0-255
手機號^[01]\d{10}$11 位,首位 0/1
日期^[12]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$1900-2999 年
Email^[[:alnum:]]+@[[:alnum:]]+\.[a-z]+$簡化版

代碼示例

bool is_int(const string& s) {
    static const regex r("^[-]?(0|([1-9][0-9]*))$");
    return regex_match(s, r);
}

注意

  • C++ regex 默認用 ECMAScript 語法,性能一般,高頻調用建議預編譯 static const regex。
  • 轉義:字符串字面量中反斜杠需雙寫 \\.,原始字符串 R"(\.)" 更清晰。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved