繁体   English   中英

C ++中的正则表达式

[英]Regular Expression in C++

我想为正则表达式编写C ++库。 我知道有很多库可用,但我想学习正则表达式背后的理论,并由我自己实现。

任何人都可以指导我应该从什么开始。

http://swtch.com/~rsc/regexp/regexp1.html很好地解释了正则表达式的两种主要方法,它们的权衡,以及如何在很多情况下使更快的方法(DFA)可用大多数实现都无法使用它们。

同样值得研究的书“编译器:原理,技术和工具”深入介绍了正则表达式解析背后的技术(以及关于DFA和NDFA的理论)。 它有很好的伪代码示例,可以帮助创建自己的实现

只要您想编写库,那么除了引用其他答案提供的优秀资源之外,您还可以探索在N3225的第28章中找到的正则表达式的C ++ 0x规范。

就我而言,这是关于正则表达式主题的书。 它可能无法帮助您找到如何编写C ++库的代码,但理论的解释非常好,并且它包含了许多用于在许多上下文中实际应用正则表达式的示例。

http://oreilly.com/catalog/9780596528126?green=9514625548&cmp=af-mybuy-9780596528126.IP

在TR1的Microsoft实现中 ,它是下一个C ++ 0x标准的报告,可以使用<regex>库。

TR1适用于visual 2008,默认情况下为visual 2010。

但是,当你计划在windows平台上进行编程时,这才有趣。

我不知道g ++是否在其tr1实现中包含<regex>库。 我想是的,但我不知道。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM