打造效率最低的正则表达式

windinwing 2009-07-20 02:01:46
Stopwatch w = new Stopwatch();
w.Start();
Regex r = new Regex(@"(^|[^^]+)*^" );
Match m = r.Match("111111111111111111111111111111111111111");
if (m.Success)
{
w.Stop();
Response.Write(w.Elapsed.TotalSeconds.ToString("0.0000000"));
}

 基本上到28个字符长度以上就很难匹配完了
 类似的还有很多
(a|[^a]+)*^
(b|[^b]+)*^

(^|[^^]+)*(^|[^^]+)*^ 
 (^|[^^]+|[^^]*)*^    可以把效率在降底一个点,25个字符

谁还有效率更低的?纯属测试,无聊者进
...全文
125 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
dgy_dgy520 2009-07-20
  • 打赏
  • 举报
回复
学习学习
windinwing 2009-07-20
  • 打赏
  • 举报
回复
试过了,同样是匹配永远完成不了,不过需要的字符更长吖
typeof 2009-07-20
  • 打赏
  • 举报
回复
试试用 X(.+)+X 来匹配如下字符串:
=XX=======================================================================
十八道胡同 2009-07-20
  • 打赏
  • 举报
回复
多加几个|,效率会在低一点吧

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧