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

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 肥仔 閱讀(1069) 評論(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>
            久久久久久久久久久久久9999| 免费成人小视频| 亚洲精品网址在线观看| 欧美大片在线看| 亚洲片在线观看| 日韩亚洲不卡在线| 欧美午夜在线一二页| 亚洲女同同性videoxma| 欧美一区二区三区免费看| 国产一区二区三区免费不卡| 久久视频国产精品免费视频在线| 久久精品视频在线| 亚洲欧洲精品成人久久奇米网| 亚洲国产一区二区视频| 欧美特黄一区| 久久久欧美一区二区| 免费成人高清在线视频| 正在播放亚洲一区| 欧美专区在线| 一本一本久久a久久精品综合麻豆| 亚洲伦理一区| 国产亚洲午夜| 亚洲激情黄色| 国产亚洲精品一区二区| 亚洲国产高潮在线观看| 国产精品国产三级国产a| 欧美专区在线观看| 另类天堂视频在线观看| 亚洲一区二区久久| 久久久亚洲成人| 亚洲在线观看| 男女激情久久| 久久精品亚洲热| 欧美日韩另类在线| 久久久亚洲一区| 欧美三区在线| 欧美国产日产韩国视频| 国产精品婷婷午夜在线观看| 亚洲第一精品夜夜躁人人爽| 国产精品女主播| 亚洲激情av在线| 国语自产精品视频在线看一大j8 | 欧美激情亚洲| 国产精品视频午夜| 亚洲国产日韩欧美在线99 | 欧美性生交xxxxx久久久| 毛片基地黄久久久久久天堂| 国产精品theporn| 亚洲国产女人aaa毛片在线| 国产欧美日韩亚洲| 中文在线不卡| 一区二区成人精品| 欧美二区在线播放| 欧美国产日韩亚洲一区| 国产视频综合在线| 亚洲免费小视频| 先锋影音一区二区三区| 欧美伦理影院| 亚洲精美视频| 亚洲美女av在线播放| 久久免费黄色| 另类专区欧美制服同性| 欧美电影免费观看高清| 欧美国产日产韩国视频| 久久综合99re88久久爱| 国产午夜精品一区二区三区视频| 艳妇臀荡乳欲伦亚洲一区| 亚洲视频免费观看| 欧美日韩精品在线视频| 亚洲精品免费在线观看| 亚洲精品国产欧美| 欧美国产日本| 日韩亚洲国产欧美| 亚洲视频电影图片偷拍一区| 欧美日韩国产精品自在自线| 99精品视频免费观看视频| 一区二区三区精密机械公司| 欧美日韩美女在线| 中国成人亚色综合网站| 午夜欧美大片免费观看| 国产日产欧美a一级在线| 先锋影音国产精品| 久久永久免费| 亚洲电影免费在线观看| 欧美激情一区二区三区高清视频| 亚洲激情影院| 亚洲欧美国产三级| 国产午夜精品久久久久久免费视| 久久精品国产一区二区三区| 欧美激情国产日韩| 亚洲天天影视| 国产一区二区三区黄| 麻豆freexxxx性91精品| 99热免费精品在线观看| 欧美在线观看网站| 亚洲电影在线免费观看| 欧美日韩你懂的| 亚洲免费中文| 欧美激情一区二区三区在线视频观看 | 亚洲激情视频在线观看| 亚洲一区二区三区免费视频| 国产精品一区二区三区四区| 久久人人97超碰精品888| 亚洲精品之草原avav久久| 欧美亚洲日本国产| 亚洲黄色片网站| 国产精品露脸自拍| 麻豆精品精华液| 亚洲午夜精品国产| 亚洲国产小视频| 久久精品人人做人人综合 | 国产日韩在线看片| 牛牛影视久久网| 亚洲免费伊人电影在线观看av| 欧美成人午夜剧场免费观看| 亚洲欧美日本伦理| 亚洲精品国产精品国产自| 国产亚洲精品综合一区91| 欧美精品一区二区在线播放| 久久福利视频导航| 亚洲一级影院| 亚洲精品美女91| 欧美 日韩 国产精品免费观看| 亚洲欧美一区二区精品久久久| 亚洲欧洲日产国产综合网| 国产一区二区福利| 国产精品久久久久久久久免费桃花 | 亚洲一二三四久久| 亚洲精品永久免费| 欧美激情按摩在线| 狼人社综合社区| 久久久久久久久久久久久女国产乱| 在线亚洲欧美视频| 日韩香蕉视频| 亚洲精品一线二线三线无人区| 黄色精品一区| 国产真实久久| 国产亚洲欧美日韩精品| 国产精品久久久久国产精品日日| 欧美激情精品久久久久| 麻豆av一区二区三区久久| 久久婷婷久久| 久久躁日日躁aaaaxxxx| 久久久99爱| 久久久精品视频成人| 久久久久久69| 久久免费视频在线| 久久久久久久久久看片| 久久久久久久久久久久久久一区| 久久久久久久久岛国免费| 欧美在线看片| 久久婷婷国产综合国色天香| 久久综合999| 欧美成人在线影院| 欧美日韩国产一区二区三区地区| 欧美精品一区三区在线观看| 欧美日韩亚洲精品内裤| 国产精品免费看| 国产日韩av一区二区| 韩日欧美一区| 亚洲精品国产视频| 亚洲天天影视| 久久九九热免费视频| 美玉足脚交一区二区三区图片| 欧美激情二区三区| 99天天综合性| 亚洲欧美文学| 蜜桃视频一区| 欧美日韩一区二区三区在线看| 国产精品视屏| 亚洲电影免费观看高清完整版在线观看| 亚洲高清久久| 新狼窝色av性久久久久久| 玖玖综合伊人| 日韩视频不卡| 久久国产精品久久久久久久久久 | 亚洲欧美在线一区| 久久久久久91香蕉国产| 欧美日本精品| 国产美女精品视频| 亚洲激情网站| 久久精品国产99| 亚洲国产精品黑人久久久| 在线综合欧美| 猫咪成人在线观看| 国产精品天天摸av网| 亚洲国产婷婷综合在线精品| 亚洲一区欧美激情| 欧美69wwwcom| 亚洲女人天堂av| 欧美日韩成人在线观看| 国产一区导航| 亚洲视频福利| 欧美成人资源网| 午夜视频久久久| 欧美日韩精品一二三区| 精品88久久久久88久久久| 亚洲综合电影一区二区三区| 亚洲国产mv| 久久精品亚洲国产奇米99|