タグ

正規表現に関するeiji8pouのブックマーク (8)

  • Perlの正規表現をマスターしよう - Perl入門ゼミ

    Perl › 正規表現 Perlの正規表現の解説です。この記事を読めば、日常で利用する正規表現のすべてを短時間でマスターすることができます。正規表現を使えば、文字列の集合を表現することができ、正規表現にマッチする文字列を検索したり、置換したりすることができます。 正規表現を使って文字列の集合を表現できます。たとえば「a」「aa」「aaa」という三つの文字列を正規表現で表現してみましょう。連続する文字の個数を表現する正規表現「{}」を使って次のように書くことができます。 a{1,3} 「a」「aa」「aaa」という文字列の集合をひとつの正規表現「a{1,3}」で表しています。{}は量指定子と呼ばれるもので、連続した文字を表現することができます。 a aa -> a{1,3} aaa 正規表現の例をもう一つみてみましょう。「p1」「q1」「r1」という文字列の集合をひとつの正規表現「[pqr]

    Perlの正規表現をマスターしよう - Perl入門ゼミ
  • 頑張って正規表現内で円周率を999桁計算するPerlプログラム - 竹迫の近況報告

    というのは嘘です。ごめんなさい。 #!/usr/bin/perl '~!'!~('(?{'.('=&$;<(*/$&:?$+!$+"$&":!;$)(`~"*=#=)"&&$;&('^ '`):&])`<<`]{~@-+*-+{|,`+-#=,/`{)&|"`+@"="='^ '(|{=,`>{"|%-=-```{/,)>#``#.<#+?`%#{+%_??-.').'})') 実行結果 3.141592653589793238462643383279502884197169399375105820974944592307816406286208 99862803482534211706798214808651328230664709384460955058223172535940812848111745 028410270193852110555964462294895493038196

    頑張って正規表現内で円周率を999桁計算するPerlプログラム - 竹迫の近況報告
    eiji8pou
    eiji8pou 2009/07/11
    これが黒魔術か……。ってこれ、999桁までの円周率を表示するワンライナーを暗号化しただけか。
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

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

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • 特定文字の出現回数

    [Perl] => [文字列操作] 文字列から特定の文字の出現回数をカウントするには置換をした回数をカウントすればよい。 [例] ディレクトリの階層の深さを調べます $str = '/a/b/c/d/index.html'; $count = $str; $count = $count =~ s/\///g; print "$count\n"

    eiji8pou
    eiji8pou 2009/05/23
    あー。変数をあんまり汚さなくて済むのねこの書き方。
  • 正規表現に見切りをつけるとき

    Perl, Rubyなど手軽に使えるプログラミング言語に慣れてくると、あらゆるテキストデータの処理に正規表現(regular expression)を使ってしまいがちです。 けれど実は、正規表現の処理能力を超えるフォーマットというのが存在します。その典型的な例が、XMLやJSONのように、入れ子になったデータフォーマットです。

  • 2008-12-13 - senzogawaのNな日々

    解説をしていなかったが、ファイル操作プラグインを公開済みだ。というか、パス指定を忘れていたためにフォルダ指定でフォルダ・ファイル名の一覧を取得できないという赤面もののバグを更新したと思ったら、パス間違えて転送してたので、ついさっき更新しなおした。情けなや。 http://senzogawa.s90.xrea.com/dl/plugin/fileutil.zip NScripterに備わってないフォルダ作成・削除、ファイル移動・コピー・改名、ファイルへの行入出力、フォルダやファイルの一覧取得を実装してある。 実用に際して作成したもので、利用しているのはセーブファイルの移動処理やリプレイファイルの一覧取得処理など。ただし、アーカイブ内はのぞけない。 D言語的には型対型でパラメータの内容と形式を自動解決して関数を呼び出すという機構を作ってはみたものの、イマイチ綺麗にならなかった。テンプレートに関

  • tr - 5部 関数リファレンス - [SMART]

    tr///演算子の使い方 # 小文字に統一 $str =~ tr/A-Z/a-z/; trは変数を展開しません。変数を使いたい場合には、evalを使います。 eval "tr/$search/$replace/, 1" or die $@; c オプション(Complement) cオプションは、検索文字列以外の文字を検索します。つまり、最初に指定する文字列に含まれていない文字を置換文字列の文字に変換します。 # 0から9以外の文字列を*に変換 tr/[0-9]/*/c s オプション(Squeeze) sオプションは、検索文字列の文字が連続して複数個見つかった場合、それらを1文字に置き換えます。 # 複数の「A」を1つの「A」に変換 tr/A/A/s d オプション(Delete) dオプションは、検索文字列の文字のうち置換文字列には含まれない文字をすべて削除します。 tr///演算子の

    eiji8pou
    eiji8pou 2007/10/07
    基本だからこそ忘れないように
  • MODULE.JP - 日本語に絡むUnicodeブロックとスクリプト(正規表現)

    といった感じ。ちなみにjava.util.regexとPerlのUnicodeブロックは接頭子Inを使うが、.NETの場合は接頭子Isを使う、という差異があります。 Unicodeスクリプトとブロックの違いがビミョーに見えるけど、ブロックがコードブロックをゴリッと指定したものに対して、スクリプトは特定言語に関係する文字の種類を直接指定するものなのでブロックよりも断定的、って感じで見れば良かなと。ちなみにUnicode関連のドキュメントによるとUnicodeプロパティとスクリプトで日語の文章を表そうとすると m/(?:(?:\p{Hiragana}|\p{Katakana}|\p{Han}|\p{Latin}|\p{Common}) (?:\p{Inherited}|\p{Me}|\p{Mn})?)+/x; こんな感じになるそうな。実際流通している文章はこれより多様なので現実とは微妙に乖離

  • 1