読書Chomsky hierarchy ... ... regexpは、タイプ2の文法(文脈自由文法)を解析できないこと、そしてタイプ-1とタイプ0も解析できないことを知っています。 正規表現はすべてのタイプ3文法(regular grammars)を解析/捕捉できますか?Regexpの解析タイプ-3文法
1
A
答えて
1
はい、交替、連結、およびクレーネの星をサポートしています。 PCRE(Perl/Java/JavaScript/PHP/...)型の正規表現の場合は、((...)|(...))
で置換を実装し、連結を(...)(...)
で、クレーネの星を(...)*
で実装します。 (これらの言語のほとんどに—がありますが、\A
と\z
のようなものを使用して、 "start-of-string"と "end-of-string"を指定する必要があります。通常の文法では—それは考えです)。
しかし、プログラミングの文脈で "正規表現"と呼ばれるものは、必ずしも上記のものすべてを持っているわけではありません。 (たとえば、PCREに(a|b|c)
と特殊ケースに相当する[abc]
の両方があるのに対し、POSIX BREsは[abc]
しか持たないのに対し、代替の1つの「分岐」はすべて単一の文字で構成されています。 (ab|c)
のようなものは表現できません)。
関連する問題
- 1. htmlを解析するためのRegExp。
- 2. 文法解析ツリー?
- 3. タイプCSVファイルの解析
- 4. LL(1)文法と解析
- 5. 文脈自由文法の解析
- 6. タイプ3の文法 - 正規表現
- 7. PythonのExpat解析3
- 8. フォーマット "YYYYMMDD"の文字列をTimex.Parse.DateTimeタイプに解析するには?
- 9. Actionscript 3 svg XML解析バグ?
- 10. 一般的なインターフェイスとタイプの解析
- 11. ラムダの構文解析方法
- 12. FileHelpersの使用。このCSVタイプを解析する方法
- 13. 解析文字列
- 14. Vala - 構文解析
- 15. 解析文字列
- 16. JavaScript RegExp 3つの部分
- 17. 文字列を解析する方法
- 18. ANTLR 3解析 - 不一致文字...期待している
- 19. Lotus-1-2-3(wk1)ファイルの解析ガイドライン
- 20. JSsonの構文解析エラー
- 21. TLSハンドシェイクメッセージの構文解析
- 22. 構文解析の引数
- 23. javaバイナリメッセージの構文解析
- 24. '&'文字のSAX解析
- 25. 文字列の解析R
- 26. 文字列解析のヘルプ
- 27. UPDATE sql文のデコード/解析
- 28. Pythonの構文解析
- 29. 文字列の解析
- 30. MS Roslynの構文解析