タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

pegに関するjiroron666のブックマーク (2)

  • PEG基礎文法最速マスター - kmizuの日記

    Scala基礎文法最速マスターを書こうか迷っていたら、既にyuroyoroさんに書かれてしまったので、ちょっと違う方向で。BNFを既に知っている人は、これを読めばPEGの基礎をマスターしてPEGを書くことができるようになるでしょう(ほんとか?)。 基 Parsing Expression Grammar(PEG)はBNFに似ているけど、ちょっと(かなり?)違う文法の表記法です。BNFはその文法がどのような言語を表現しているかを定めるのに対して、PEGは入力がどのように解析されるかを定めます。PEGとBNFの一番大きな違いは、PEGには曖昧さが無いことです。たとえば、プログラミング言語のif文を表現する次の擬似BNFには曖昧さがあります。 statement ::= if_statement | ...; if_statement ::= IF LPAREN expr RPAREN sta

    PEG基礎文法最速マスター - kmizuの日記
  • nim文字列操作(PEG) - Qiita

    概要 nimのPEG操作関連処理をコツコツと書いていく予定 nimでは、正規表現ライブラリ(re)もありますが、PEG(pegs)も標準で入っています。 正規表現ライブラリはimpure(OS環境依存ってこと?)、PEGはpureライブラリ(nimで実装)となっているので、PEGを使ったほうがいいのかなーという印象です。 以下メモ シンプルなマッチング import strutils,pegs,unicode block: echo "1" =~ peg"\d" echo "123" =~ peg"\d+" echo "123ABC" =~ peg"\d+\w+" echo "123_ABC" =~ peg"\d+_\w+"

    nim文字列操作(PEG) - Qiita
  • 1