正規表示式
是一種描述字串行的方法,就是尋找一定規則的匹配字串行。在標頭檔案regex中
regex:表示有乙個正規表示式的類
regex_match:將乙個字串行與乙個正規表示式匹配
regex_search:尋找第乙個與正規表示式匹配的子串行
regex_replace:使用給定格式替換乙個正規表示式
sregex_iterator:迭代器介面卡,呼叫regex_search來遍歷乙個string中所有匹配的字串
smatch:容器類,儲存在string中搜尋的結果
ssub_match:string中匹配的子表示式的結果
string pattern("[^c]ei");
pattern = "[[:alpha:]]*" + pattern + "[[:alpha:]]*";//定製查詢模式規則
regex r(pattern); //構建乙個用於查詢模式的regex
smatch resu;//搜尋的結果
string test_str = "receipt freind theif receive";
if (regex_search(test_str, resu, r))//得到第乙個匹配的子串行
使用sregex_iterator
for (sregex_iterator it(file.begin(), file.end(), r), end_it; it != end_it; ++it)
使用子表示式
第乙個是點之前表示檔名的部分 第二個表示副檔名 icase忽略大小寫
regex rz("([[:alnum:]]+)\\.(ccp|cxx|cc)$", regex::icase);
使用regex_replace
string fmt = "$2.$5.$7.";//格式改為ddd.ddd.ddd
string pp = "(\\()?(\\d)(\\))?([-. ])?(\\d)([-. ]?)(\\d)";
regex rr(pp);
string num = "(908) 555-1800";
cout << regex_replace(num, rr, fmt) << endl;
C 正規表示式
c 中的正規表示式 1 c 中的正規表示式 jeffrey e.f.friedl寫了一本關於正規表示式的書 精通正規表示式 作者為了使讀者更好的理解和掌握正規表示式,編造了乙個故事。該書的語言以perl為主。據我所知c 中的正規表示式也是基於perl5。所以它們應該有許多的共同之處。其實,我並不打算...
C 正規表示式
正規表示式 元字元 匹配任何單個字元,匹配括號內的任何乙個字元,改變優先順序,定義提取組,將兩個匹配條件進行邏輯或運算,匹配0至多個它之前的子表示式,和萬用字元 沒關係,匹配前面的子表示式一次或多次,匹配前面的子表示式零次或一次,匹配前面表示式確定的n次,匹配前面表示式至少n次,匹配前面表示式n到m...
C 正規表示式
正規表示式元字元 1 中括號 用來描述匹配規則,乙個中括號只能匹配乙個字元 2 小括號 用來描述匹配的字串,乙個小括號表示匹配一段字串 3 大括號 用來描述匹配的具體數量 4 s 用於匹配單個空格符,包括tab鍵和換行符 5 s 用於匹配除單個空格符之外的所有字元 6 d 用於匹配從0到9的數字 7...