タグ

regexに関するamari3のブックマーク (9)

  • grepの-oオプションと-Pオプションの組み合わせが便利 - Gre's Blog(跡地)

    $ paste <(cat score | grep -oP '[^\d]+') <(cat score | grep -oP '\d+') | xargs -n 2 #シェル芸— ぐれ (@grethlen) 2014, 6月 14 上記のようにgrepコマンドを叩いていたら「-oPってオプションなに?」と言われたので。 grep -oPって? -oオプションとは --only-matchingの略。マッチした部分のみを抽出するというオプションのこと。 $ echo "123abc456dfg" | grep -o [a-z] a b c d f g -Pオプションとは マッチさせる文字列にPerlで使われているものと同じ正規表現(Perl正規表現)をつかえるようにする。PerlのP。 普通の正規表現とPerl正規表現の違いって? 主に以下の3つ。 一部のメタ文字が使える [参考] \d

    grepの-oオプションと-Pオプションの組み合わせが便利 - Gre's Blog(跡地)
  • モダンなインターフェースで正規表現が学べる『RegExr v2.0』 | 100SHIKI

    よくあるツールではあるが、今風のインターフェースだったのでご紹介。 RegExr v2.0を使えば、さまざまな正規表現をブラウザ上で試すことができる。 ちゃんとリファレンスも付いているので、迷った時に参照してみるといいだろう。 また作った正規表現はコミュニティとシェアしたりお気に入りに入れることもできる。 そろそろ正規表現をマスターしたい・・・という人はいかがだろうか。

    モダンなインターフェースで正規表現が学べる『RegExr v2.0』 | 100SHIKI
    amari3
    amari3 2014/04/06
  • 正規表現によるバリデーションでは ^ と $ ではなく \A と \z を使おう

    正規表現によるバリデーション等で、完全一致を示す目的で ^ と $ を用いる方法が一般的ですが、正しくは \A と \z を用いる必要があります。Rubyの場合 ^ と $ を使って完全一致のバリデーションを行うと脆弱性が入りやすいワナとなります。PerlPHPの場合は、Ruby程ではありませんが不具合が生じるので \A と \z を使うようにしましょう。 はじめに 大垣さんのブログエントリ「PHPer向け、Ruby/Railsの落とし穴」には、Rubyの落とし穴として、完全一致検索の指定として、正規表現の ^ と $ を指定する例が、Ruby on Rails Security Guideからの引用として紹介されています。以下の正規表現は、XSS対策として、httpスキームあるいはhttpsスキームのURLのみを許可する正規表現のつもりです。 /^https?:\/\/[^\n]+$/

  • PHPで仮想マシンベースの正規表現エンジンを作ってみる 第一回

    こんにちは、久保田です。 皆さん正規表現は使っていますか? PHPに限らずどんな言語を使っていても、正規表現にお世話になっていないプログラマはいないと思います。しかし、その正規表現がどのように実装されているかについては知らない方が多いのではないのでしょうか。 この記事では、その正規表現エンジンの実装方法の一つである仮想マシンによる正規表現エンジンの実装方法を解説しつつ実際に簡単な正規表現エンジンを作っていきたいと思います。 正規表現エンジンの実装方法 正規表現エンジンの実装方法はいくつかあるのですが、それの一つに仮想マシンによって正規表現のマッチング処理を実行するやり方があります。PHPで利用している正規表現エンジンであるPCREはこの方式を採用しています。 仮想マシンによる実装方法は、正規表現というよりもプログラミング言語の実装方法の一つとして知られています。Rubyの最もメジャーな実装

    PHPで仮想マシンベースの正規表現エンジンを作ってみる 第一回
  • Loading...

    amari3
    amari3 2013/05/08
  • emacsの正規表現をもっと便利に使う - $shibayu36->blog;

    emacsで正規表現を使って置換したいみたいな要求はそれなりにあると思いますが、それをやろうとするとemacsの正規表現のバックスラッシュ地獄みたいなものに遭遇することがよくあります。そんな時に使いたいtipsを少しだけ紹介します。 re-builderを使う emacsにはre-builderというものがあって、書いている正規表現のマッチ状況をリアルタイムにプレビューすることが出来るツールが存在します。M-x re-builderして、いろいろ書いてみると現在のマッチ状況がプレビューされます。 実行中にC-c C-wすればその正規表現をコピーでき、C-c C-qで終了出来ます。emacsにはいろいろな正規表現syntaxがあるので、C-c C-iで切り替えもできます。 詳しくは以下の記事を見るとよいでしょう。 Emacsの正規表現編集モード re-builder とややこしいバックスラッ

    emacsの正規表現をもっと便利に使う - $shibayu36->blog;
  • 性感染症が心配になったら何科を受診すればいい?

    一昔前にとても大きな話題になったエイズでは、多くの患者さんが命を落としています。 ニュースなどであまり見なくなりましたが、感染者は今も増加し続けています。 事実ではない噂レベルの話が広がり、その印象を持っている人も多いかもしれませんが、正しい情報を身につけておけば、適切な対応ができるはずです。 風邪や他の感染症などと比べてあまり表に出ない病気の一つですが、かかると厄介なものです。 性感染症はSTDといって、性行為で感染する病気を総称した呼び名です。 つまり、勝手に感染するわけではなく、必ず誰かから移されるわけです。 STD感染が確認されると、その感染経路をたどることがあります。 相手は自分と親しい人だったり、母子感染なども考えられますから、原因を明らかにすることは急務です。 性感染症を疑う場合、その原因となる行動があります。 心配や不安があるのなら、一度保健所や病院で検査してもらったほうが

    amari3
    amari3 2011/04/29
    すごい
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • regexp - ^$でなくて\A\zを使おう : 404 Blog Not Found

    2009年03月09日00:30 カテゴリLightweight LanguagesTips regexp - ^$でなくて\A\zを使おう まずは回答から。 正規表現で「制御文字以外」のチェック - ockeghem(徳丸浩)の日記 文字エンコーディングの妥当姓 制御文字(\x00〜\x1f, \x7f)のチェック 文字列長のチェック このうち後ろ二つを正規表現として書くにはどうすればいいかを考えていました。 こういう時には、「全文字がOKならOK」と考えるのではなく、「一文字でもNGならNG」と考えると楽になります。それは「スペースと非制御文字以外」なのですから、/[^ \S]/が求めていた正規表現で、=~ではなく!~が使うべき演算子ということになります。全角スペースもOKにしたければ、/[^ \x{3000}\S]/。[追記参照] [Run via Codepad] #!perl -

    regexp - ^$でなくて\A\zを使おう : 404 Blog Not Found
  • 1