タグ

2012年11月26日のブックマーク (9件)

  • 正規表現の解説 初級編

    正規表現は英語の "Regular Expression" の訳です。文字列のパターンを表現するために使われます。 (正式な定義がどうなっているのかは知りませんので、正しい表現ではないかもしれません) 正規表現はUNIXの世界では古くから使われてきました。テキストデータの加工をするツールでは、大抵正規表現が使えるようです。 Windows(DOS)の世界では、ワイルドカードがよく使われてきましたが、正規表現の方が細かい指定が可能です。その分難しい(奥が深い)のも事実ですが。 元々は数学系の用語のようで、その場合正則表現という訳になるようです。もちろん、この場合上記の定義は嘘になります。テキスト処理のための解説なので、細かいことは許してください(笑) キャラクタ 文字の事です(分かってるって?(笑))。ちゃんと日語で書けよという方、正論です。ただ、正論は時によっては極論でもあります。 文

    mnru
    mnru 2012/11/26
  • scala/src/library/scala/util/parsing/combinator at v2.9.2 · scala/scala

    mnru
    mnru 2012/11/26
  • [php][正規表現] 行末には $ ではなく \z を使おう

    正規表現の文字列末尾を表す $ と \z の違い。 $ は行末 = \n にもヒットするのでセキュリティ上よろしくないんだって。 \z(小文字)を使うのがいいんだって。(\Z(大文字)だと行末にもヒットするので注意。) ■ 参考 文字列の末尾(\Z, \z) - 位置の指定 - Java正規表現の使い方 正規表現メモ \z Perl 5.005で導入されたもので、\Zと似ていますが、\Zが文字列 末尾の改行の直前にもマッチするのに対して、この演算子は 文字列の末尾にのみマッチするという点が異なります。 ◇ いまいちな例preg_match('/abc$/', $str);◇ よい例preg_match('/abc\z/', $str); ここだと \Z(大文字)は$と同じと書いている。\zは記述なし。 言語によって違うのかな? phpで試してみた。 ■ 試したソース<?php echo '

    mnru
    mnru 2012/11/26
  • Parsing Text with Scala — Xebia Blog

    In my efforts to teach myself Scala, I tried solving a problem I’ve tackled in various languages, 6510 assembly code (didn’t get far…), pl/sql, Java (with and without Drools) and Groovy among them. Usually I get bogged down in some detail of the language so I never get to reap any actual benefits of my efforts in daily life. The plus side of this never ending task is that by now I don’t have to sp

  • An Introduction To Scala Parser Combinators - Part 1: Parser Basics · Christoph Henkelmann

    Interested in ML and AI? Check out my new AI & algorithm blog DIVISIO Jan 13, 2011 20:30 · 3046 words · 15 minutes read Scala Parser Combinators What Is A Parser (In A Functional Sense)? Let’s approach this bit by bit. We are thinking in FP terms, so a Parser is obviously a function that turns something into something (it parses the input and produces an output). So in sluggish Pseudo-Scala, it is

  • Scala の Parser を試したらハマったのでまとめておく。 - 偏見プログラマの語り!

    以前、Scala の Parser を試したんですがハマってしまったので、ハマり記念ということで記事にしておこうと思います。 ちなみに、Scala のパーサコンビネータについて知りたい人は僕のこの記事よりも @kmizu さんのスライドを読んだ方が良いように思います。 ■ Scala のパーサ概要 まず import しておきたいのは scala.util.parsing.combinator.Parsers です。 主な手順は次の通り。 1.Parsers オブジェクトを作る。 2.Parsers.Parser[ Result ] のオブジェクトを作る。ここで Result はパース結果の型。 3.2.で作ったオブジェクトにパース対象のシーケンスオブジェクトを渡す。 4.3.の結果得られるものがパース結果。 ■ 簡単なトコからいきましょ まず Char のシーケンスを読んで MyData

    Scala の Parser を試したらハマったのでまとめておく。 - 偏見プログラマの語り!
  • 【Scheme】ForthをSchemeで実装してみた。

    Webやソフトウェア開発、マンション管理士をしつつ、宅建・管業・消防設備士に合格し、保育士・電気工事士を狙う人のブログ。 はい。今度はScheme(処理系はGaucheを使用)でForthを実装してみました。 プログラムは5つの部分に分かれていて、 1)スタック管理 2)標準入力からプログラムを読むリーダ 3)ForthプログラムをSchemeプログラムに変換するトランスレータ 4)ワードが登録される辞書 5)実行制御 という構成になっています。 とりあえず、各部分の説明をしていきます。 1)スタック管理 ;;; スタック管理 (define *data-stack* '()) (define (push val) (set! *data-stack* (cons val *data-stack*))) (define (pop) (cond ((null? *data-stack*) (

    mnru
    mnru 2012/11/26
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    mnru
    mnru 2012/11/26
  • Forthを作ってみる - moiの頭の中

    プログラマの数だけForthが存在するといわれる、Forthを作ってみる。 実装言語は、C言語にする。 さて、やってみよう。 簡単なForthのプログラム スタックを作る 値をスタックに積む スタックから値を取り出す スタックの値を加算する スタックの内容を表示する Forthを実行してみる? プログラム配列を走査する 「値をスタックに積む」を実行する プログラムを用意する Forthを実行してみる ソースコードを読み込む 条件分岐を実装する 繰り返し構造を実装する ワード定義を実装する ワード名を登録する 処理内容を登録する ワード名と処理内容を関連付ける ワード定義のテスト 対話環境を作る 32ビット化する 対話環境の複数行対応 スレッディングの変更 文字列を表示する 変数を実装する 変数を実装する2 最後に ところで、「Forthを作ってみる」を電子書籍にしました。 Forthを作っ

    mnru
    mnru 2012/11/26