タグ

ブックマーク / koseki.hatenablog.com (5)

  • JavaScript正規表現メモ。 (JavaScriptでよく使う書き方。) - こせきの技術日記

    タイトル変えました。旧タイトル「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の速度は大して変わらない。 正規表現のベンチマー

    JavaScript正規表現メモ。 (JavaScriptでよく使う書き方。) - こせきの技術日記
  • gitのユーザ名やメールアドレスをコミット後に書き換える。 - こせきの技術日記

    gitのユーザ名は、 git config --global user.name koseki git config --global user.email koseki@example.comのように設定しますが、設定を忘れてコミットしてしまった場合。さっきデフォルトの漢字のフルネームでコミットしてしまい、しかもgithubに出してから気づきました。ちょっと恥ずかしい。 どうせ始めたばっかりだったのでリポジトリを作り直してもよかったんですが、調べたらgit filter-branchで過去を書き換えることができました。 404 Not Found git filter-branch -f --env-filter 'export GIT_AUTHOR_NAME="koseki"' git filter-branch -f --env-filter 'export GIT_AUTHOR_E

    gitのユーザ名やメールアドレスをコミット後に書き換える。 - こせきの技術日記
  • GPLメモ - こせきの技術日記

    配布とソースコード GPLの派生物を渡した相手が希望するなら、ソースコードを渡さなければならない。 不特定多数にソースを公開する義務はない。 AさんがBさんにGPLのソースから作ったバイナリを渡すとき、Bさんに要求されたらソースも渡さなければならない。 BさんがAさんから受け取ったバイナリを100人に売ったとき、その100人に要求されたらソースも渡さなければならない。 顧客の100人がバイナリを購入せず、BさんやAさんにソースを要求しても渡す必要はない。 オープンソースで行こう!: 第2回 オープンソースライセンス事情を俯瞰する 「特にGPLのソフトウェアをビジネス用途などで第三者に販売・提供する場合、その第三者からソースコードの開示要求があればそれに応じなければなりません」 ソースを渡した相手に、再配布を許可しなければならない。 渡された相手が「再配布しなければならない」わけではない。

    GPLメモ - こせきの技術日記
  • 地獄のようによくわかるSQLテーブル結合 - こせきの技術日記

    テーブルのJOINが苦手でしたが、この例を思いついてからは、すっきりくっきり理解できるようになりました。むしろ頭から離れません……。 ※ INNER、OUTERは飾り。省略できる。 INNER JOINJOIN LEFT OUTER JOIN → LEFT JOIN RIGHT OUTER JOIN → RIGHT JOIN ※ ON ...=... をまとめて USING(属性) と書ける。 ※ 何で結合するか言うまでもない時は、NATURALを指定すると勝手にJOINしてくれる。NATURALにJOINして……。 ※ WHEREは結合した結果に作用する。 ※ 現実には上図のように1対1で結合しません。 ※ おまけ。CROSS JOIN。 こんなの使いません。 ブクマ用画像。

    地獄のようによくわかるSQLテーブル結合 - こせきの技術日記
  • Apacheのアクセス制御をちゃんと理解する。 - こせきの技術日記

    Apacheの設定で Order deny,allowとか Satisfy anyとか、なんだか意味わからん人のために。僕はずっとわかってなかった。 基 Apacheのアクセス制御には、 ホストによる制御 (Order,Allow,Deny) ユーザ認証による制御 (Auth*, Require) の2通りがある。 Satisfyは、2通りあるアクセス制御の両方を満たす必要があるかどうかを決定する。デフォルトはSatisfy all。Satisfy anyなら、どちらか片方満たせばよい。 Order http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#order Order deny,allowは、全てのホストからのアクセスを許可する。 Order allow,denyは、全てのホストからのアクセスを拒否する。 Order d

    Apacheのアクセス制御をちゃんと理解する。 - こせきの技術日記
  • 1