Translating Regular Expression Matching into Transducers
Translating Regular Expression Matching into Transducers
复制标题
将正则表达式匹配转换为转换器
DOI:
10.1016/j.jal.2011.11.003
复制
发表时间:
2012
影响因子:
--
通讯作者:
Andrei Voronkov
中科院分区:
文献类型:
--
作者:
Yuto Sakuma;Yasuhiko Minamide;Andrei Voronkov
Regular expression matching is an essential tool in string manipulating programs and plays crucial roles in scripting languages. We focus on regular expression matching based on the strategy of Perl and develop a translation from regular expression matching into transducers. The representation makes it possible to apply the theory of formal languages in static analysis and verification of string manipulating programs. We first formulate the semantics of regular expression matching as a nondeterministic parser by using the composition of the list and output monads. Then, we transform the nondeterministic parser into deterministic one by introducing lookahead. The deterministic parser is formulated with the option monad instead of the list monad and derived through equational reasoning involving monads. From the definition of the deterministic parser, we can easily construct transducers through transducers with regular lookahead. We have implemented the translation and conducted experiments on regular expressions found in several popular PHP programs.
登录
查看更多内容
DOI:
10.1145/1133651.1133652
发表时间:
2006
期刊:
ACM Trans. Program. Lang. Syst.
影响因子:
--
作者:
Stijn Vansummeren
通讯作者:
Stijn Vansummeren
影响因子:
2.5
作者:
SALOMAA, A
通讯作者:
SALOMAA, A
DOI:
10.1145/1836089.1836120
发表时间:
2010
期刊:
--
影响因子:
--
作者:
Claus Brabrand;Jakob G. Thomsen
通讯作者:
Jakob G. Thomsen
DOI:
--
发表时间:
2010
期刊:
ACM SIGPLAN International Conference on Functional Programming
影响因子:
--
作者:
Sebastian Fischer;F. Huch;T. Wilke
通讯作者:
T. Wilke
DOI:
10.1007/978-3-540-27836-8_53
发表时间:
2004
期刊:
--
影响因子:
--
作者:
Alain Frisch;L. Cardelli
通讯作者:
L. Cardelli