青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

woaidongmao

文章均收錄自他人博客,但不喜標題前加-[轉貼],因其丑陋,見諒!~
隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
數據加載中……

正則表達式速度測試(Regular Expression Performance Comparison)

The following tables provide comparisons between the following regular expression libraries:

GRETA.

The Boost regex library.

Henry Spencer's regular expression library - this is provided for comparison as a typical non-backtracking implementation.

Philip Hazel's PCRE library.

Details

Machine: Intel Pentium E2160 1.8GHz PC.

Compiler: Microsoft Visual C++ version 7.1.

C++ Standard Library: Dinkumware standard library version 313.

OS: Win32.

Boost version: 1.45.0.

PCRE version: 8.10.

As ever care should be taken in interpreting the results, only sensible regular expressions (rather than pathological cases) are given, most are taken from the Boost regex examples, or from the Library of Regular Expressions. In addition, some variation in the relative performance of these libraries can be expected on other machines - as memory access and processor caching effects can be quite large for most finite state machine algorithms.

Averages

The following are the average relative scores for all the tests: the perfect regular expression library would score 1, in practice anything less than 2 is pretty good.

GRETA GRETA
(non-recursive mode)
Boost Boost + C++ locale PCRE Dynamic Xpressive
2.0308 5.24257 1.72796 1.90946 1.78887 2.78239

Comparison 1: Long Search

For each of the following regular expressions the time taken to find all occurrences of the expression within a long English language text was measured (mtent12.txt from Project Gutenberg, 19Mb).

Expression GRETA GRETA
(non-recursive mode)
Boost Boost + C++ locale PCRE Dynamic Xpressive
Twain 1
(0.0249s)
1
(0.0249s)
2.74
(0.0683s)
2.75
(0.0684s)
1.1
(0.0273s)
1.02
(0.0254s)
Huck[[:alpha:]]+ 1
(0.0239s)
1.02
(0.0244s)
2.78
(0.0664s)
2.78
(0.0665s)
1.06
(0.0254s)
1.02
(0.0244s)
[[:alpha:]]+ing 4.37
(2.19s)
9.94
(4.97s)
1
(0.5s)
1.03
(0.515s)
5.16
(2.58s)
2.19
(1.09s)
^[^ ]*?Twain 4.63
(0.796s)
13.9
(2.39s)
1
(0.172s)
1.02
(0.176s)
3.09
(0.531s)
2.36
(0.406s)
Tom|Sawyer|Huckleberry|Finn 4.92
(0.274s)
15.4
(0.859s)
1.37
(0.0761s)
1.4
(0.0781s)
1.03
(0.0576s)
1
(0.0556s)
(Tom|Sawyer|Huckleberry|Finn).{0,30}river|river.{0,30}(Tom|Sawyer|Huckleberry|Finn) 2.56
(0.359s)
7
(0.984s)
1
(0.141s)
1
(0.141s)
1.75
(0.246s)
1.28
(0.179s)

Comparison 2: Medium Sized Search

For each of the following regular expressions the time taken to find all occurrences of the expression within a medium sized English language text was measured (the first 50K from mtent12.txt - up to the end of Chapter 1).

Expression GRETA GRETA
(non-recursive mode)
Boost Boost + C++ locale PCRE Dynamic Xpressive
Twain 1
(5.91e-005s)
1.03
(6.1e-005s)
3.81
(0.000225s)
3.87
(0.000229s)
2.45
(0.000145s)
1.23
(7.24e-005s)
Huck[[:alpha:]]+ 1
(5.91e-005s)
1.02
(6.01e-005s)
3.29
(0.000194s)
3.29
(0.000195s)
1.71
(0.000101s)
1.1
(6.48e-005s)
[[:alpha:]]+ing 5.19
(0.00586s)
11.7
(0.0132s)
1
(0.00113s)
1.03
(0.00116s)
5.95
(0.00672s)
2.38
(0.00268s)
^[^ ]*?Twain 4.39
(0.00207s)
13.2
(0.00622s)
1
(0.000473s)
1
(0.000473s)
3.03
(0.00143s)
2.32
(0.0011s)
Tom|Sawyer|Huckleberry|Finn 2.27
(0.000899s)
6.61
(0.00262s)
1
(0.000396s)
1.04
(0.000412s)
1.23
(0.000488s)
1.27
(0.000504s)
(Tom|Sawyer|Huckleberry|Finn).{0,30}river|river.{0,30}(Tom|Sawyer|Huckleberry|Finn) 1.82
(0.00125s)
4.62
(0.00317s)
1
(0.000687s)
1.02
(0.000701s)
1.47
(0.00101s)
1.31
(0.0009s)

Comparison 3: C++ Code Search

For each of the following regular expressions the time taken to find all occurrences of the expression within the C++ source file boost/crc.hpp was measured.

Expression GRETA GRETA
(non-recursive mode)
Boost Boost + C++ locale PCRE Dynamic Xpressive
^(template[[:space:]]*<[^;:{]+>[[:space:]]*)?(class|struct)[[:space:]]*(\<\w+\>([ ]*\([^)]*\))?[[:space:]]*)*(\<\w*\>)[[:space:]]*(<[^;:{]+>[[:space:]]*)?(\{|:[^;\{()]*\{) 6.07
(0.000717s)
27.9
(0.00329s)
1
(0.000118s)
1.03
(0.000122s)
3.23
(0.000381s)
1.81
(0.000214s)
(^[ ]*#(?:[^\\\n]|\\[^\n_[:punct:][:alnum:]]*[\n[:punct:][:word:]])*)|(//[^\n]*|/\*.*?\*/)|\<([+-]?(?:(?:0x[[:xdigit:]]+)|(?:(?:[[:digit:]]*\.)?[[:digit:]]+(?:[eE][+-]?[[:digit:]]+)?))u?(?:(?:int(?:8|16|32|64))|L)?)\>|('(?:[^\\']|\\.)*'|"(?:[^\\"]|\\.)*")|\<(__asm|__cdecl|__declspec|__export|__far16|__fastcall|__fortran|__import|__pascal|__rtti|__stdcall|_asm|_cdecl|__except|_export|_far16|_fastcall|__finally|_fortran|_import|_pascal|_stdcall|__thread|__try|asm|auto|bool|break|case|catch|cdecl|char|class|const|const_cast|continue|default|delete|do|double|dynamic_cast|else|enum|explicit|extern|false|float|for|friend|goto|if|inline|int|long|mutable|namespace|new|operator|pascal|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_cast|struct|switch|template|this|throw|true|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\> 1
(0.00275s)
2.84
(0.00781s)
1.38
(0.00378s)
1.38
(0.00378s)
3.2
(0.00878s)
NA
^[ ]*#[ ]*include[ ]+("[^"]+"|<[^>]+>) 3.84
(0.000747s)
16.6
(0.00323s)
1.02
(0.000198s)
1
(0.000195s)
1.92
(0.000374s)
1.33
(0.000259s)
^[ ]*#[ ]*include[ ]+("boost/[^"]+"|<boost/[^>]+>) 3.84
(0.000747s)
16.6
(0.00323s)
1
(0.000195s)
1.02
(0.000198s)
1.92
(0.000374s)
1.33
(0.000259s)

Comparison 4: HTML Document Search

For each of the following regular expressions the time taken to find all occurrences of the expression within the html file libs/libraries.htm was measured.

Expression GRETA GRETA
(non-recursive mode)
Boost Boost + C++ locale PCRE Dynamic Xpressive
beman|john|dave 3.15
(0.000915s)
8.42
(0.00244s)
1
(0.00029s)
1.42
(0.000412s)
1.26
(0.000366s)
7.57
(0.0022s)
<p>.*?</p> 1
(8.96e-005s)
1.06
(9.53e-005s)
2.38
(0.000214s)
3.15
(0.000282s)
2.22
(0.000198s)
10.6
(0.000946s)
<a[^>]+href=("[^"]*"|[^[:space:]]+)[^>]*> 1.17
(0.000533s)
1.63
(0.000747s)
1
(0.000457s)
2.4
(0.0011s)
1.07
(0.000488s)
5.34
(0.00244s)
<h[12345678][^>]*>.*?</h[12345678]> 1
(0.00016s)
1.09
(0.000175s)
1.38
(0.000221s)
1.81
(0.00029s)
1.29
(0.000206s)
8.57
(0.00137s)
<img[^>]+src=("[^"]*"|[^[:space:]]+)[^>]*> 1
(7.43e-005s)
1.03
(7.63e-005s)
3.28
(0.000244s)
4
(0.000297s)
2.56
(0.000191s)
9.85
(0.000732s)
<font[^>]+face=("[^"]*"|[^[:space:]]+)[^>]*>.*?</font> 1
(6.86e-005s)
1.03
(7.06e-005s)
3.56
(0.000244s)
4.33
(0.000297s)
2.67
(0.000183s)
9.11
(0.000625s)

Comparison 3: Simple Matches

For each of the following regular expressions the time taken to match against the text indicated was measured.

Expression Text GRETA GRETA
(non-recursive mode)
Boost Boost + C++ locale PCRE Dynamic Xpressive
abc abc 1.37
(2.09e-007s)
1.9
(2.9e-007s)
2.15
(3.28e-007s)
2.29
(3.5e-007s)
1
(1.53e-007s)
1.81
(2.76e-007s)
^([0-9]+)(\-| |$)(.*)$ 100- this is a line of ftp response which contains a message string 1.3
(5.21e-007s)
2.19
(8.79e-007s)
1.52
(6.1e-007s)
1.63
(6.56e-007s)
1
(4.02e-007s)
1.44
(5.81e-007s)
([[:digit:]]{4}[- ]){3}[[:digit:]]{3,4} 1234-5678-1234-456 1.46
(6.4e-007s)
1.97
(8.64e-007s)
2.03
(8.94e-007s)
2.1
(9.23e-007s)
1
(4.39e-007s)
2.03
(8.94e-007s)
^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$ john@johnmaddock.co.uk 1.12
(1.16e-006s)
1.63
(1.7e-006s)
1.49
(1.55e-006s)
1.54
(1.61e-006s)
1
(1.04e-006s)
1.46
(1.52e-006s)
^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$ foo12@foo.edu 1.09
(9.54e-007s)
1.7
(1.49e-006s)
1.46
(1.28e-006s)
1.56
(1.37e-006s)
1
(8.78e-007s)
1.46
(1.28e-006s)
^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$ bob.smith@foo.tv 1.1
(9.82e-007s)
1.7
(1.52e-006s)
1.43
(1.28e-006s)
1.5
(1.34e-006s)
1
(8.94e-007s)
1.43
(1.28e-006s)
^[a-zA-Z]{1,2}[0-9][0-9A-Za-z]{0,1} {0,1}[0-9][A-Za-z]{2}$ EH10 2QQ 1.11
(3.06e-007s)
1.67
(4.62e-007s)
1.78
(4.91e-007s)
2
(5.51e-007s)
1
(2.76e-007s)
1.73
(4.77e-007s)
^[a-zA-Z]{1,2}[0-9][0-9A-Za-z]{0,1} {0,1}[0-9][A-Za-z]{2}$ G1 1AA 1.05
(2.9e-007s)
1.67
(4.62e-007s)
1.78
(4.91e-007s)
1.94
(5.36e-007s)
1
(2.76e-007s)
1.73
(4.77e-007s)
^[a-zA-Z]{1,2}[0-9][0-9A-Za-z]{0,1} {0,1}[0-9][A-Za-z]{2}$ SW1 1ZZ 1
(2.76e-007s)
1.62
(4.47e-007s)
1.79
(4.92e-007s)
1.94
(5.36e-007s)
1
(2.76e-007s)
1.73
(4.77e-007s)
^[[:digit:]]{1,2}/[[:digit:]]{1,2}/[[:digit:]]{4}$ 4/1/2001 1.2
(3.13e-007s)
1.63
(4.24e-007s)
1.69
(4.4e-007s)
1.77
(4.62e-007s)
1
(2.6e-007s)
1.95
(5.06e-007s)
^[[:digit:]]{1,2}/[[:digit:]]{1,2}/[[:digit:]]{4}$ 12/12/2001 1.11
(2.9e-007s)
1.57
(4.1e-007s)
1.71
(4.47e-007s)
1.88
(4.91e-007s)
1
(2.61e-007s)
1.88
(4.91e-007s)
^[-+]?[[:digit:]]*\.?[[:digit:]]*$ 123 1
(2.53e-007s)
1.5
(3.8e-007s)
1.82
(4.62e-007s)
1.88
(4.77e-007s)
1.03
(2.6e-007s)
1.59
(4.02e-007s)
^[-+]?[[:digit:]]*\.?[[:digit:]]*$ +3.14159 1
(2.76e-007s)
1.67
(4.62e-007s)
1.78
(4.91e-007s)
1.95
(5.37e-007s)
1
(2.76e-007s)
1.6
(4.4e-007s)
^[-+]?[[:digit:]]*\.?[[:digit:]]*$ -3.14159 1
(2.76e-007s)
1.67
(4.62e-007s)
1.78
(4.91e-007s)
1.95
(5.37e-007s)
1
(2.76e-007s)
1.6
(4.4e-007s)


?? Copyright John Maddock 2003

Use, modification and distribution are subject to the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

posted on 2011-07-09 12:21 肥仔 閱讀(1066) 評論(0)  編輯 收藏 引用 所屬分類: 正則表達式

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲国产综合91精品麻豆| 亚洲电影免费观看高清完整版在线观看| 免费久久99精品国产| 久久成人亚洲| 久久成人免费日本黄色| 欧美在线视频网站| 欧美专区中文字幕| 久久精品国产99国产精品| 久久av红桃一区二区小说| 久久精品日产第一区二区| 久久嫩草精品久久久精品| 欧美在线电影| 欧美高清在线一区| 亚洲美女免费精品视频在线观看| 日韩视频免费观看高清在线视频| 99国产精品国产精品久久| 一区二区三区产品免费精品久久75 | 亚洲欧美日韩国产精品| 先锋影音久久| 久久久av毛片精品| 91久久精品美女| 欧美福利一区| 一区二区日韩精品| 久久人人97超碰精品888| 蜜臀99久久精品久久久久久软件| 欧美精品一区在线发布| 国产精品av久久久久久麻豆网| 国产精品永久| 99国产一区| 久久久久国产一区二区| 亚洲欧洲日产国产综合网| 校园激情久久| 欧美日韩在线播| 亚洲国产高清自拍| 久久99伊人| 一区二区三区福利| 久久综合色88| 国产欧美日韩综合一区在线观看 | 欧美三级电影大全| 韩曰欧美视频免费观看| 99re66热这里只有精品4| 欧美影视一区| 99国产精品99久久久久久粉嫩| 狂野欧美激情性xxxx| 国产精品视频一| 亚洲视频播放| 亚洲精品九九| 麻豆免费精品视频| 国产一区二区三区久久悠悠色av| 亚洲一区综合| 亚洲最新视频在线播放| 久久久一本精品99久久精品66| 日韩一级裸体免费视频| 久久精品一区二区国产| 亚洲欧洲综合| 午夜激情一区| 亚洲电影免费观看高清| 日韩午夜电影av| 国产欧美精品在线| 亚洲激情在线观看| 国产一区二区欧美日韩| 亚洲国产精品黑人久久久| 国产美女一区| 亚洲精品影视| 亚洲国产mv| 99精品久久久| 亚洲精品午夜| 久久久久se| 欧美一级午夜免费电影| 欧美激情一区二区三区在线视频| 久久精品视频在线播放| 欧美日韩成人一区二区| 欧美激情亚洲| 伊人蜜桃色噜噜激情综合| 亚洲一区视频| 亚洲——在线| 欧美色图一区二区三区| 欧美激情久久久久| 狠狠久久五月精品中文字幕| 亚洲午夜一区二区三区| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 亚洲卡通欧美制服中文| 午夜精品久久久| 一本久道久久综合婷婷鲸鱼| 久久久91精品国产一区二区三区 | 欧美激情精品久久久久久变态| 国产日本欧洲亚洲| 99riav国产精品| 日韩亚洲欧美精品| 欧美国产欧美亚洲国产日韩mv天天看完整| 久久一区亚洲| 国语精品中文字幕| 欧美一区二区三区另类| 欧美一区二区在线观看| 国产伦精品一区二区三区免费迷| 在线视频亚洲| 欧美激情偷拍| 亚洲三级毛片| 中文在线资源观看网站视频免费不卡 | 久久夜色精品国产欧美乱极品| 欧美本精品男人aⅴ天堂| 国产亚洲综合在线| 久久天堂成人| 精品动漫3d一区二区三区免费版| 午夜日韩激情| 美女诱惑一区| 亚洲精品美女久久久久| 免费人成网站在线观看欧美高清| 亚洲国产裸拍裸体视频在线观看乱了 | 久久久精品性| 亚洲高清在线播放| 在线视频亚洲欧美| 香蕉乱码成人久久天堂爱免费| 亚洲素人在线| 国产精品日日摸夜夜摸av| 新67194成人永久网站| 牛牛国产精品| 一区二区三区波多野结衣在线观看| 欧美日韩专区在线| 欧美一区二视频| 亚洲国产精品一区二区www在线| 最新热久久免费视频| 欧美体内谢she精2性欧美| 亚洲影音先锋| 女人香蕉久久**毛片精品| 99精品欧美一区二区三区| 国产精品丝袜久久久久久app| 久久成年人视频| 亚洲国产欧美一区| 欧美一区二区三区视频免费播放| 国产有码一区二区| 欧美91视频| 欧美一区二区在线免费播放| 亚洲黄色免费电影| 欧美在线免费视屏| 亚洲欧洲精品一区二区精品久久久| 欧美日韩亚洲视频| 久久精品99无色码中文字幕| 亚洲美女视频在线观看| 久久久一区二区| 亚洲小说春色综合另类电影| 国产在线日韩| 欧美小视频在线| 久久综合给合久久狠狠狠97色69| 中文久久精品| 亚洲国产精品一区二区第一页| 亚洲欧美在线免费| 亚洲精品免费在线观看| 国产视频在线观看一区二区| 欧美日韩一区二区三区在线观看免 | 免费不卡在线观看| 亚洲午夜精品网| 亚洲精品视频一区| 国产一区二区中文| 国产精品久久久久久久免费软件| 久久久www| 午夜日韩电影| 亚洲小视频在线| 亚洲精品久久久久久久久久久久久| 久久精品国产成人| 亚洲你懂的在线视频| 99国内精品久久久久久久软件| 狠久久av成人天堂| 国产精品毛片在线| 欧美日韩在线不卡| 欧美激情aaaa| 久久三级福利| 久久精品官网| 久久国产一二区| 久久一区二区三区国产精品| 性8sex亚洲区入口| 亚洲欧美日韩国产综合精品二区| 亚洲免费成人av电影| 亚洲高清久久| 亚洲福利av| 亚洲电影在线看| 亚洲人被黑人高潮完整版| 亚洲国产电影| 亚洲人成在线播放| 亚洲品质自拍| 亚洲毛片一区二区| 日韩亚洲在线| 日韩一二在线观看| 亚洲色图制服丝袜| 亚洲免费婷婷| 午夜伦欧美伦电影理论片| 亚洲免费中文| 欧美在线日韩| 久久蜜桃精品| 欧美不卡视频一区| 欧美激情中文字幕乱码免费| 欧美aⅴ99久久黑人专区| 欧美不卡视频| 亚洲国产黄色| 亚洲美女在线观看| 亚洲一区国产| 久久久91精品国产一区二区三区 | 亚洲精品一区二| 91久久精品久久国产性色也91| 亚洲国产一二三|