タグ

regexpに関するmorygonzalezのブックマーク (7)

  • 正規表現によるバリデーションでは ^ と $ ではなく \A と \z を使おう

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

  • 正規表現クラス[:alnum:]の罠 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    正規表現クラス[:alnum:]の罠 - Qiita
    morygonzalez
    morygonzalez 2014/01/29
    あぶなかった
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

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

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • JavaScriptの正規表現で変数? - おふぃす・ぞんち開発日記

    昨日の続きで、今日は技術的なお話。 JavaScriptの正規表現で変数使う時ってどうするんだろね・・・。 今回は、入力フォームの変数としてimage1,image2・・・にマッチする物を見つけたかったのね。それだけなら、 aaa.match(/^image([0-9]+)/) でいいんだけど、画像(image)と拡大画像(limage)を共通処理にしたかったんで、この正規表現の「image」の部分を可変(変数)にしてマッチさせたいってわけ。Perlだったら、 $aaa =~ /^$image[0-9]+/ と変数「$image」とでもしてぶち込んじゃえばいいんで、非常にわかりやすいし便利。JavaScriptで同じことしようったって、変数に「$」がついてて区別出来るわけではないので、入れようがない。 調べてみたら、正規表現オブジェクトというのがあるらしい・・・ re = new RegE

    JavaScriptの正規表現で変数? - おふぃす・ぞんち開発日記
    morygonzalez
    morygonzalez 2011/09/23
    正規表現で変数を使うとき
  • Javascriptで正規表現マッチの後方参照 - Pyro Memo

    見つけにくかったのでメモ。コードがハイライトされるというだけで、ソースを載せたくなるのはなぜだろう。 タグに設定されたid属性から数値で設定されたID値を取得する。jQueryを使うとリストの中のliタグや、テーブルの中のtdタグに設定されたIDを一括で取得することができる。 rex = RegExp("model_([0-9]+)"); var id_list = []; var id = 0; $("#sample-list li").each(function() { var item = $(this); if (item.attr("id").match(rex)) { id = RegExp.$1; } id_list.push(id); }); //id_listを処理 Javascriptで分からない事を検索すると、古い情報がたくさん出てきて目的の情報が見つからない事が多い

  • 電話番号、郵便番号にマッチする真の正規表現 : にぽたん研究所

    Shibuya.pm #16 「夏の正規表現祭り」で、正規表現のお話をさせていただきました。 まぁ、「電話番号にマッチする正規表現」とか「郵便番号にマッチする正規表現」とかよく書かれてるけど、「どれもこれも手緩いよね」って話。 あ、だいぶはしょったかな。 とりあえずスライドに書いたので、発表をご覧になってない方はスライドからご覧ください。 ふと見返すと、このブログで電話番号の正規表現を公表するのは 3 度目ですが、あれからだいぶ経ってますね。 今ではもっと厳密な正規表現を作っています。 そして、Number::Phone::JP に続き、Number::ZipCode::JP という酔狂なモジュールが公開された記念で、郵便番号にマッチする正規表現を今回初めて公開しますが、そもそもここまで厳密な正規表現が公開されること自体、邦初公開ってヤツでしょう。 Shibuya.pm でも言いましたが

    電話番号、郵便番号にマッチする真の正規表現 : にぽたん研究所
  • vimでPerlやRubyの拡張正規表現の置換や検索などを実現するeregex.vim

    このドキュメントの内容は、以下の通りです。 ソフトウェア ダウンロード セットアップ どのぐらい楽になったか 既存のコマンドと eregex の対応表 Vim の検索や置換は、正規表現が利用でき、パワフルに編集や検索が行えます。しかしながら、非常にたくさんのエスケープが必要になるため、入力するキーが自然に多くなり、エスケープだらけで意味不明な状況になりがちです。 PerlPHP(実際にはpreg)、Rubyのように拡張正規表現が使えたら楽なのに、と思われることでしょう。 ソフトウェア Vim 6.1 以上が必要です。 ダウンロード http://www.vector.co.jp/soft/dl/unix/writing/se265654.html セットアップ wget 'http://my.vector.co.jp/servlet/System.FileDownload/downloa

  • 1