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

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>
            久久全球大尺度高清视频| 国产精品天天摸av网| 亚洲精品1区| 久久久在线视频| 久久久天天操| 欧美成人综合一区| 亚洲欧洲综合另类| 一区二区三区波多野结衣在线观看| 亚洲人体大胆视频| 99视频超级精品| 亚洲综合成人婷婷小说| 久久国产直播| 欧美片第1页综合| 国产精品福利网站| 国产一区二区三区直播精品电影 | 午夜在线一区| 久久久久久午夜| 欧美日韩四区| 狠狠入ady亚洲精品经典电影| 亚洲日本va午夜在线电影 | 欧美插天视频在线播放| 亚洲黄色在线看| 欧美一区二区播放| 欧美福利电影在线观看| 国产精品热久久久久夜色精品三区| 国内视频一区| 亚洲综合日韩中文字幕v在线| 久久夜色精品国产欧美乱| 亚洲美女网站| 久久青草欧美一区二区三区| 欧美日韩精品一本二本三本| 国产一区二区精品久久91| 国产欧美在线观看一区| 亚洲高清资源| 噜噜噜噜噜久久久久久91 | 宅男精品视频| 午夜精品一区二区三区在线视| 国产日韩欧美一区二区三区四区| 久久免费精品视频| 欧美激情精品久久久久久大尺度| 欧美另类高清视频在线| 日韩一区二区精品在线观看| 亚洲另类一区二区| 国产精品嫩草99a| 麻豆精品视频| 欧美日韩一区在线观看| 久久综合久久综合久久| 欧美日韩精品福利| 狂野欧美一区| 国产精品亚洲视频| 亚洲国产精品久久91精品| 国产精品资源| 亚洲精品一区久久久久久| 国外成人在线| 一区二区三区鲁丝不卡| 亚洲电影免费观看高清完整版| 夜色激情一区二区| 狠狠综合久久av一区二区小说| 99ri日韩精品视频| 在线观看三级视频欧美| 亚洲欧美日韩天堂一区二区| 亚洲日本电影在线| 欧美一区二区| 午夜免费在线观看精品视频| 欧美黄在线观看| 老牛国产精品一区的观看方式| 欧美日韩成人一区| 欧美高清视频www夜色资源网| 国产欧美一区二区精品性| 亚洲激情在线观看视频免费| 国内精品久久久久伊人av| 亚洲一区二区精品视频| 一区二区三区欧美在线观看| 美女久久网站| 免费看av成人| 影音先锋久久资源网| 亚洲欧美电影院| 亚洲在线免费视频| 欧美三级在线播放| 亚洲精品一区二区三| 欧美亚洲免费电影| 狠狠干狠狠久久| 国产精品久久久99| 欧美成人久久| 久久久精品999| 欧美一区激情视频在线观看| 国产精品视频yy9099| 久久精品成人一区二区三区| 亚洲第一综合天堂另类专| 国产精品www网站| 欧美日韩在线影院| 亚洲人成网站影音先锋播放| 狠狠色狠狠色综合人人| 亚洲欧美日韩电影| 午夜欧美大尺度福利影院在线看| 欧美日韩亚洲一区二区三区在线 | 亚洲国产成人精品久久| 欧美一区二区三区四区夜夜大片| 午夜精品久久久99热福利| 欧美香蕉大胸在线视频观看| 夜色激情一区二区| 亚洲欧美日韩第一区| 国产精品免费在线| 午夜精品久久久久久久白皮肤| 欧美专区在线| 国产一区二区三区网站| 久久国产精品72免费观看| 久久蜜桃精品| 在线观看亚洲精品视频| 免费观看在线综合色| 亚洲人成网站精品片在线观看| 亚洲系列中文字幕| 国产精品久久激情| 欧美有码在线观看视频| 免费不卡亚洲欧美| 亚洲国产成人精品久久| 欧美日韩麻豆| 亚洲欧美日韩国产综合| 久久午夜精品| 最新国产成人在线观看| 欧美日韩三级一区二区| 亚洲在线视频| 理论片一区二区在线| 亚洲精选视频免费看| 欧美偷拍一区二区| 欧美中文字幕在线| 亚洲国产精品v| 亚洲网站在线观看| 国产午夜精品在线| 欧美国产精品日韩| 亚洲视频成人| 亚洲黄色毛片| 另类天堂av| 国产色婷婷国产综合在线理论片a| 国产专区精品视频| 99在线热播精品免费99热| 久久本道综合色狠狠五月| 欧美激情亚洲自拍| 午夜精品久久久久久久久久久| 欧美另类99xxxxx| 99精品国产福利在线观看免费| 欧美激情免费观看| 亚洲一区二区精品视频| 久久综合久久88| 中文网丁香综合网| 久久中文在线| 久久精品网址| 亚洲另类自拍| 国产亚洲精品久久久久婷婷瑜伽| 久久婷婷蜜乳一本欲蜜臀| 一区二区三区日韩精品| 另类天堂视频在线观看| 欧美日韩成人精品| 久久久成人网| 亚洲素人在线| 欧美黑人多人双交| 久久精品一区四区| 亚洲免费影视第一页| 亚洲精品乱码久久久久久久久 | 日韩亚洲欧美在线观看| 久久婷婷成人综合色| 亚洲一区二区三区四区在线观看| 在线看欧美日韩| 国产亚洲成av人片在线观看桃 | 国产精品久久久久久久久免费樱桃 | 亚洲一区二区三区视频| 亚洲国产高清一区二区三区| 国产欧美在线视频| 国产精品色婷婷久久58| 欧美三级日本三级少妇99| 欧美国产精品| 欧美不卡视频| 欧美一区二区三区精品电影| 日韩网站在线| 免费欧美在线| 欧美一级大片在线观看| 欧美一区二区三区电影在线观看| 国产日韩精品一区二区| 欧美freesex8一10精品| 国产精品扒开腿爽爽爽视频| 久久精品国产亚洲精品| 欧美一区免费视频| 亚洲人成网在线播放| 亚洲视频你懂的| 影音先锋亚洲精品| 国产日韩欧美精品在线| 国产精品久99| 国产精品综合| 国产乱码精品一区二区三区五月婷| 欧美日韩精品一区| 欧美性一二三区| 国产精品日本精品| 国产视频不卡| 黄色日韩精品| 亚洲国产精品久久久久| 亚洲黄页一区| 一本久久综合亚洲鲁鲁| 亚洲视频 欧洲视频| 午夜精品免费在线| 久久午夜色播影院免费高清|