タグ

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

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    正規表現クラス[: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