正規表現によるバリデーション等で、完全一致を示す目的で ^ と $ を用いる方法が一般的ですが、正しくは \A と \z を用いる必要があります。Rubyの場合 ^ と $ を使って完全一致のバリデーションを行うと脆弱性が入りやすいワナとなります。PerlやPHPの場合は、Ruby程ではありませんが不具合が生じるので \A と \z を使うようにしましょう。 はじめに 大垣さんのブログエントリ「PHPer向け、Ruby/Railsの落とし穴」には、Rubyの落とし穴として、完全一致検索の指定として、正規表現の ^ と $ を指定する例が、Ruby on Rails Security Guideからの引用として紹介されています。以下の正規表現は、XSS対策として、httpスキームあるいはhttpsスキームのURLのみを許可する正規表現のつもりです。 /^https?:\/\/[^\n]+$/
先日、正規表現が使えるようになってきたと書いたものの、今まで日本語に対して正規表現を使うのは、どうせ上手く動かないだろうという様な先入観で使っていなかったのですが、調べてみるとただの食わず嫌いだった事が解りました。 利用シーンは色々考えられると思うのですが、例えば日本語文書中の単位付き数詞(100g、20個等)から数値と単位を両方抜き出すという処理を考えます。折角なので数値・単位共に半角全角文字がどちらも使われていて、正規表現が使いにくそうな状況を想定します。結論から言うとunicode文字列を使えばこのような状況でも上手く正規表現を使う事が出来ます。 使い方は簡単でパターンと検索対象の文字列をunicodeで用意し、searchやmatch等を呼ぶ際にunicodeフラグを指定すればOKです。unicodeフラグは省略形のre.Uも用意されています。先ほど想定した問題に対する正規表現を書
RegexKitLite Lightweight Objective-C Regular Expressions for Mac OS X using the ICU Library Introduction to RegexKitLite This document introduces RegexKitLite for Mac OS X. RegexKitLite enables easy access to regular expressions by providing a number of additions to the standard Foundation NSString class. RegexKitLite acts as a bridge between the NSString class and the regular expression engine in
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
タイトル変えました。旧タイトル「JavaScriptでよく使う書き方」。よく使うけど毎回忘れる。 正規表現にマッチするかどうか。 RegExp#testを使う。 /abc/.test("abcdefg") // => true String#searchはマッチした位置を返す。マッチしない場合は-1。先頭にマッチすると0でfalseなので注意。真偽値が欲しい場合はString#searchを使わない。 "abcdefg".search(/xxx/) // => -1 "abcdefg".search(/def/) // => 3 "abcdefg".search(/abc/) == false // => true 正規表現の部分マッチを得る。 部分マッチを得るには、RegExp#execかString#matchを使う。execとmatchの速度は大して変わらない。 正規表現のベンチマー
概要 データの準備 実際の話1 ^^; バイナリエディタで開く Emacs をバイナリエディタとして使う JPEG, PNG, GIF 画像を見てみる. JPEG 画像を見てみる PNG 画像を見てみる GIF 画像を見てみる 数々のファイルのヘッダを確認する 正規表現作成 概要 あるファイルが画像データであるかどうかを判定するために, そのファイルのヘッダ部を正規表現でチェックするという方法がある. 例: Hatena::Diary - Web アプリ開発 独習メモ - 画像ファイルタイプ自動判別 この例では, JPEG 画像ならば /^\xFF\xD8/, PNG 画像ならば /^\x89PNG, GIF 画像ならば /^GIF8[79]a/ という正規表現によって チェックを行っている. では, あまり広く使われていないようなバイナリファイルのヘッダを 正規表現でチェックできるように
CocoaOniguruma は、プロジェクトに直接組み込むソースファイル形式で配布しています。 core ディレクトリを CocoaOniguruma にリネームして、プロジェクトディレクトリにコピーしてください。 Xcode でプロジェクトを開き、 .h、 .c、 .m ファイルを Classes 配下に追加してください。 以下のようにヘッダファイルを import すると、正規表現を使えます。 #import "OnigRegexp.h" core ディレクトリと同じ階層にある framework ディレクトリを使います。 フレームワークのプロジェクトを Xcode で開き、ビルドします。 Release ビルドになっていることを確認してください。 build/Release/CocoaOniguruma.framework を、自分のプロジェクト配下にコピーします。 自分のプロジェ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く