#define pcre_static // 靜態庫編譯選項
#include #include #include #define oveccount 30 /* should be a multiple of 3 */
#define ebuflen 128
#define buflen 1024
#pragma comment (lib,"pcre.lib")
int main()
rc = pcre_exec(re, // code, 輸入引數,用pcre_compile編譯好的正則表達結構的指標
null, // extra, 輸入引數,用來向pcre_exec傳一些額外的資料資訊的結構的指標
src, // subject, 輸入引數,要被用來匹配的字串
strlen(src), // length, 輸入引數, 要被用來匹配的字串的指標
0, // startoffset, 輸入引數,用來指定subject從什麼位置開始被匹配的偏移量
0, // options, 輸入引數, 用來指定匹配過程中的一些選項
ovector, // ovector, 輸出引數,用來返回匹配位置偏移量的陣列
oveccount); // ovecsize, 輸入引數, 用來返回匹配位置偏移量的陣列的最大大小
// 返回值:匹配成功返回非負數,沒有匹配返回負數
if (rc < 0)
printf("\nok, has matched ...\n\n"); //沒有出錯,已經匹配
for (i = 0; i < rc; i++)
pcre_free(re); // 編譯正規表示式re 釋放記憶體
printf("test:%*.*f\n",10,4,1234.34);
return 0;
}
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...
正規表示式與正則語言
正規表示式和正則語言是一致的。但能不能用正規表示式識別,是需要分析的。比如0與1一樣多的01串,是否可以識別?根據幫浦引理是不可以的,所以如果想通過正規表示式來處理,那將是歧途。01與10一樣多的,是可以識別的。因為通過分析後,可以知道01與10無論如何他們的個數不會差別超過1.所以可以據此構造有限...
正規表示式 表示式
網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...