簡體   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