标签:
决定把轮子造的飞起,试着用 JAVA 写个正则引擎。
要求:
1. 纯 DFA,无需支持 捕获组 和 断言;
2. 时间复杂度 O(n);
3. 支持 ASCII 字符集,支持基本语法:支持‘\w‘, ‘\W‘, ‘\s‘, ‘\S‘, ‘\d‘, ‘\D‘ 和 ‘.‘ 七个集合及其他单字符转义,支持 ?, *, +, {x}, {x,}, {x,y} 六种量词,支持集合反转,支持括号。
4. 避免使用第三方工具,编译为无依赖库。
(正则引擎已完成,Github)
标签:
原文地址:http://www.cnblogs.com/zbdzzg/p/4509101.html