タグ

ブックマーク / blog.dksg.jp (2)

  • 正規表現で文字列の否定

    入力チェックなどでお世話になる正規表現ですが、これがなかなか奥が深い。複雑な正規表現は一体何をしているのか解析するだけでも一苦労。 この前壁にぶつかったのが 「ある特定の"文字列"を含まないようにチェックをかけたい」 というもの。ある特定の1文字を含まないような正規表現は簡単ですが、文字列となると、これが結構難しい。 たとえば「a」と「b」は含まれていていいけど、「ab」という文字列は駄目という場合。なんとなく ^[^(ab)]+$ でいけそうな気がするけど、これでは駄目。 ちなみに正規表現を試したいときはここのサイトを利用すると便利。どれがマッチしたのかを視覚的に表示してくれるので、とってもわかりやすい。 「ab」の文字列を否定する場合は「b」の前に「a」がないという記述をしないと駄目らしい。ここを参考に。実際の正規表現はこんな感じ。 ^(([^b]|[^a]b)|[^a]a)+$ ちな

    正規表現で文字列の否定
    moerrari
    moerrari 2014/01/29
    前方参照否定位置指定子(?!hoge)が使えない場合は[^(hoge)]のように記述すればよい。opmlから旧まるごとRSSのURLにマッチしないRSSフィードを検索するには xmlUrl="http:\/\/[^(mrss)].*?"と書く。
  • PostgreSQL、MySQL保守用のバックアップ、リストアのコマンド

    毎回検索して実行しているので、自分用メモ。 環境: CentOS(linux), lampp ▼PostgreSQL バックアップ $ pg_dump dbname > /tmp/output.sql バックアップ(drop文付き) $ pg_dump --clean dbname > /tmp/output.sql リストア $ psql dbname < /tmp/input.sql リストアしたらVACUUMする(アナライズも) $ vacuumdb -d dbname --analyze ▼MySQL バックアップ(パスワード付き)。lamppが導入されているならphpMyAdmin経由の方が簡単 # mysqldump -p dbname > /tmp/output.sql リストア(パスワード付き) # mysql -p dbname < /tmp/input.sql ▼保守

    moerrari
    moerrari 2013/06/07
    バックアップとリストアの方法。リストアは>mysql データベース名 < (mysqldumpで出力したファイル名) とすればよい
  • 1