タグ

regexに関するcknbstrのブックマーク (6)

  • Vimでパターン検索するなら知っておいたほうがいいこと - derisの日記

    この記事はVim Advent Calendar 2012の166日目の記事です。 165日目はaueweさんによる.vimrcに書くべきでないVimの設定項目でした。 Vimに限りませんが、テキストエディタを使う際にテキスト検索はよく使うと思います。 ある程度慣れた人だと正規表現を用いたパターン検索を使うようになります。 もちろん、Vimにも正規表現を用いたパターン検索を行う機能は備わっています。 しかし、お世辞にもVimのデフォルト設定ではパターン検索は書きやすいとは言えません。 特に、他の正規表現方言に慣れている人は、Vimの正規表現の書き方の違いに戸惑うと思います。 記事では、Vimでパターン検索するなら知っておいたほうがいいこと+ Vimのパターン検索に使えるメタ文字をご紹介します。 パターンって何?という方は:help usr_27.txtを一読することをおすすめします。 一

    Vimでパターン検索するなら知っておいたほうがいいこと - derisの日記
  • bashの正規表現マッチングの使い方 - adsaria mood

    あるフリーウェアのインストール用bashプログラムを見ていたら次の様なものがあった。(以下の例は簡略化してある。) STRING="abc" if [[ "$STRING" =~ "^ab[cd]$" ]]; then echo "matched" else echo "unmatched" fi if文の条件表現の中に“=~”というオペレータがある。manを見ると =~ オペレータは文字列を正規表現と比較するとある。知らなかった。bashの文字列比較で正規表現が使えるとは。私は正規表現比較が必要な時はgrepに喰わせて判断していたのだが、これを使えば簡単にできる。 ところが、だ。上のプログラムが期待通りに動かない。上の例では =~ の左辺と右辺の正規表現はマッチするはずだが、結果は“unmatched”。色々と正規表現を変えてみたが、どれとしてマッチングしない。しかし、if文を次のように

    bashの正規表現マッチングの使い方 - adsaria mood
  • IPv6アドレスをより妥当な正規表現でマッチする。 - 設計と実装の狭間で。

    IPv6 Address Validation と言うサイトがあります。IPv6アドレスとして妥当かチェックしてくれる上に、RFC5952に則った表記を教えてくれます。 ここでは正規表現によってIPv6アドレスとして正しいか評価しています。 それは、以下のような正規表現です。 IPv6アドレスをマッチする。 圧縮済みIPv6アドレスでもマッチする IPv4アドレスが含まれていてもマッチする リンクローカルアドレスを識別する為のインターフェース名が含まれていてもマッチする ((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9

    IPv6アドレスをより妥当な正規表現でマッチする。 - 設計と実装の狭間で。
  • Vimのニッチな正規表現で遊ぼう - Humanity

    さあみなさんVim Advent Calendarも14日目ということで佳境にさしかかってきましたね! とか他のAdvent Calendarに参加してたなら言ってたかもしれないですが Vim Advent Calendarの場合1月5日ぐらいまで登録されてる状態とかどういうことですか... まぁ案の定Advent Calendar締切ギリギリになって急いで記事書いてますこんばんわ。*1 寝ずに記事を書いてるので勢いがついて変なこと口走ってないか心配ですが、 乗るしかない、このビッグウェーブに!ということで終始勢いだけですがそれなりに有用なことも含めたつもりです。たぶん。 いろいろネタがあって迷いましたが、Vimの正規表現について 他の正規表現エンジンにはない(と思われる)ニッチな機能を紹介していきたいと思います。 ちなみにVimの正規表現エンジンをマルチバイト文字に対応させたのはKoRo

    Vimのニッチな正規表現で遊ぼう - Humanity
  • nginx - locationの文字列と正規表現の優先順位 - うまいぼうぶろぐ

    http://wiki.nginx.org/NginxHttpCoreModule#location 少しはまった。正規表現の設定のほうが後で評価されて、設定が上書きされるのか。そういえば、apacheもそうだったかな? 例 URL: /fooにaliasを設定しているとする。で、/foo以外の画像(正規表現で指定)へのリクエストはreverse proxyしたいとする(/foo/bar.jpgはreverse proxyさせずにaliasで設定しているdirectoryから配信したい)。 この場合、/fooの設定は"location /foo"ではなくて、"location ^~ /foo"じゃないとダメ。 ###### 設定A # location /foo { # 間違い location ^~ /foo { alias /path/to/foo; index index.html

    nginx - locationの文字列と正規表現の優先順位 - うまいぼうぶろぐ
  • 1