我有使用Haskell Parsec庫進行字符串分析的此分析器。使用Parsec進行字符串標記的詞法分析
myStringLiteral = lexeme (
do str <- between (char '\'')
(char '\'' <?> "end of string")
(many stringChar)
; return (U.replace "''" "'" (foldr (maybe id (:)) "" str))
<?> "literal string"
)
串在我的語言被定義爲''
(例如:'this is my string'
)內的α-num個字符,但這些字符串也可以包含'
它裏面(在這種情況下'
,必須由另外'
,前逃脫'this is my string with '' inside of it'
)。
我需要做的是在字符串解析過程中出現'
,並判斷是否有另一個'
(如果否,返回字符串的結尾)。但我不知道該怎麼做。有任何想法嗎?謝謝!
非常好!謝啦! – 2012-03-02 23:06:15