<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Cheatsheet on ashitaka blog</title>
    <link>https://8fd9c3c3.blog-1xe.pages.dev/tags/cheatsheet/</link>
    <description>Recent content in Cheatsheet on ashitaka blog</description>
    <generator>Hugo</generator>
    <language>ja-jp</language>
    <lastBuildDate>Sun, 10 May 2020 07:24:04 +0900</lastBuildDate>
    <atom:link href="https://8fd9c3c3.blog-1xe.pages.dev/tags/cheatsheet/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Vue.js チートシート</title>
      <link>https://8fd9c3c3.blog-1xe.pages.dev/2020/05/10/vuejs/</link>
      <pubDate>Sun, 10 May 2020 07:24:04 +0900</pubDate>
      <guid>https://8fd9c3c3.blog-1xe.pages.dev/2020/05/10/vuejs/</guid>
      <description>&lt;p&gt;vuejsの気になったところ&lt;/p&gt;
&lt;h3 id=&#34;watcherの注意点&#34;&gt;watcherの注意点&lt;/h3&gt;
&lt;p&gt;wacherの中では&lt;code&gt;this&lt;/code&gt;を使えない。なるべくcomputedを使う。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;watch: {
    counter() {
        const vm = this;
        setTimeout(() =&amp;gt; {
            vm.counter = 0;
        }, 3000);
    },
},
&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;v-onディレクティブでの注意点&#34;&gt;v-onディレクティブでの注意点&lt;/h3&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;&amp;lt;!-- method event handler。vue側がいい感じに解釈 --&amp;gt;
&amp;lt;button @click=&amp;#34;countUp&amp;#34;&amp;gt;+1&amp;lt;/button&amp;gt;
&amp;lt;!-- javascript式 --&amp;gt;
&amp;lt;button @click=&amp;#34;countUp()&amp;#34;&amp;gt;+1&amp;lt;/button&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;v-showの特徴&#34;&gt;v-showの特徴&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;display: noneのcssがかかる&lt;/li&gt;
&lt;li&gt;全てdomに追加されるため初期描画が遅い&lt;/li&gt;
&lt;li&gt;要素を削除せずにcssをかけるだけなので描画の切り替えが早い&lt;/li&gt;
&lt;li&gt;elseがない&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;v-forの特徴&#34;&gt;v-forの特徴&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;要素の変更が最小限になるようになるべく再利用する&lt;/li&gt;
&lt;li&gt;予期しないバグを生む可能性があるので, key属性をつける&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;仮想ノード&#34;&gt;仮想ノード&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;createElemet&lt;/code&gt;で作られているのは仮想DOMを作るための仮想ノードである。いわゆるDocument Object Modelではなくjavascriptのオブジェクトである。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;new Vue({
        data: {
          name: &amp;#34;tak&amp;#34;,
        },
        render(createElement) {
          return createElement(&amp;#34;h1&amp;#34;, &amp;#34;hello, &amp;#34; + this.name)
        }
      }).$mount(&amp;#34;#app3&amp;#34;);
&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;仮想dom&#34;&gt;仮想DOM&lt;/h3&gt;
&lt;p&gt;DOMの変更を高速に反映するための仕組み。DOMを直接変更するには時間がかかるので, 仮想DOMを変更し前の仮想DOMとの差分を反映して高速に描画する。&lt;/p&gt;
&lt;h3 id=&#34;babel&#34;&gt;Babel&lt;/h3&gt;
&lt;p&gt;JavaScriptのコードを新しい書き方から古い書き方へと変換するツール&lt;/p&gt;
&lt;h3 id=&#34;webpack&#34;&gt;Webpack&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;webpackは、モジュールを束ねるツールです。 モジュールとは、プログラム内のJavaScriptファイル（以下：jsファイル）やsassファイルなどのことです。webpackを使うことで、複数のjsファイルをひとつのjsファイルにまとめたり、複数のsassファイルをひとつのsassファイルにしたりできます。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Dockerチートシート</title>
      <link>https://8fd9c3c3.blog-1xe.pages.dev/2020/04/29/docker/</link>
      <pubDate>Wed, 29 Apr 2020 06:00:40 +0900</pubDate>
      <guid>https://8fd9c3c3.blog-1xe.pages.dev/2020/04/29/docker/</guid>
      <description>&lt;p&gt;Dockerの忘れそうなところをメモ。&lt;/p&gt;
&lt;h3 id=&#34;dockerコンテナの実行&#34;&gt;Dockerコンテナの実行&lt;/h3&gt;
&lt;h5 id=&#34;docker-run&#34;&gt;docker run&lt;/h5&gt;
&lt;p&gt;pull, create, startを一気にやっちゃう&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-v /User/takaaki/html:/usr/share/nginx/html:ro&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;バイトマウントする。&lt;code&gt;ro&lt;/code&gt;とかだとread onlyオプションをつけることができる。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-rm&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;コンテナを停止したときに削除する。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-d&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;バックグランド実行&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-e AUTHOR=&amp;quot;Takaaki&amp;quot;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;環境変数を設定できる。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;--link static-site:ss&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;リンク先に通信できるようになる。リンク先の環境変数を追加できる。&lt;/p&gt;
&lt;h5 id=&#34;docker-build&#34;&gt;docker build&lt;/h5&gt;
&lt;p&gt;イメージを作成。引数にビルドコンテキストを指定。&lt;/p&gt;
&lt;p&gt;ビルドコンテキスト&amp;hellip;イメージが参照する範囲を指定する。ここで指定した範囲がDocker Hubにpushされるため小さい方がいい。Dockerfileがあるディレクトリの場所でもある。&lt;/p&gt;
&lt;h5 id=&#34;docker-create&#34;&gt;docker create&lt;/h5&gt;
&lt;p&gt;イメージからコンテナを作成。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-i&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;コンテナの標準入力を取得して双方向に接続.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;-t&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;コンテナ内にtty(eletypewriter)を割り当てる。&lt;/p&gt;
&lt;h5 id=&#34;docker-cp&#34;&gt;docker cp&lt;/h5&gt;
&lt;p&gt;文字通りコピー。ホストからコンテナ、コンテナからホストどちらにもできる。&lt;/p&gt;
&lt;h5 id=&#34;docker-add&#34;&gt;docker add&lt;/h5&gt;
&lt;p&gt;これは文字通りではない。tarを自動で展開したりURLからダウンロードしたりする処理が走る。cpが推奨される。&lt;/p&gt;
&lt;h5 id=&#34;docker-pause-docker-unpause&#34;&gt;docker pause, docker unpause&lt;/h5&gt;
&lt;h5 id=&#34;docker-stop-docker-start&#34;&gt;docker stop, docker start&lt;/h5&gt;
&lt;h5 id=&#34;docker-inspect&#34;&gt;docker inspect&lt;/h5&gt;
&lt;h5 id=&#34;docker-rmi&#34;&gt;docker rmi&lt;/h5&gt;
&lt;p&gt;イメージを削除。&lt;/p&gt;
&lt;h5 id=&#34;docker-rm&#34;&gt;docker rm&lt;/h5&gt;
&lt;p&gt;コンテナを削除。&lt;/p&gt;
&lt;h5 id=&#34;docker-attach&#34;&gt;docker attach&lt;/h5&gt;
&lt;p&gt;コンテナに接続される。exitで抜けるとstopされる。&lt;code&gt;it&lt;/code&gt;で実行していたならば&lt;code&gt;ctrl + p, ctrl + q&lt;/code&gt;で抜けるとstopされない。&lt;/p&gt;
&lt;h5 id=&#34;docker-exec&#34;&gt;docker exec&lt;/h5&gt;
&lt;p&gt;コンテナ内でコマンドを実行。&lt;code&gt;docker exec -it {image} /bin/bash&lt;/code&gt;としてbashを実行するのによく使われ、exitで抜けてもstopされないため安全であり推奨される。&lt;/p&gt;</description>
    </item>
    <item>
      <title>正規表現チートシート</title>
      <link>https://8fd9c3c3.blog-1xe.pages.dev/2019/06/05/regexp/</link>
      <pubDate>Wed, 05 Jun 2019 07:27:16 +0900</pubDate>
      <guid>https://8fd9c3c3.blog-1xe.pages.dev/2019/06/05/regexp/</guid>
      <description>&lt;p&gt;udemyの教材で正規表現の勉強をした。いままでなんとなく書いていたたが, これからはなんでもかける気がする…&lt;/p&gt;
&lt;h3 id=&#34;基本的な記号&#34;&gt;基本的な記号&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;= 文字または数字を1文字分指定する&lt;/li&gt;
&lt;li&gt;^(キャロット) = 直後の文字または数字を指定しない&lt;/li&gt;
&lt;li&gt;-(ハイフン) = 文字数字の範囲を指定する&lt;/li&gt;
&lt;li&gt;(バックスラッシュ) = 直後のメタ文字を単なる文字として扱う&lt;/li&gt;
&lt;li&gt;. (ワイルドカード) = なんでもよし&lt;/li&gt;
&lt;li&gt;|(パイプ) = 左右のどちらかにマッチするか判定する&lt;/li&gt;
&lt;li&gt;()(丸かっこ) = 正規表現をグループ化する&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;数量詞&#34;&gt;数量詞&lt;/h3&gt;
&lt;p&gt;繰り返したいパターンの直後におく&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;+(プラス) = 1回以上の繰り返し&lt;/li&gt;
&lt;li&gt;*(アスタリスク) = 0回以上の繰り返し&lt;/li&gt;
&lt;li&gt;?(クエスチョンマーク) = 入力なしか1文字のみ&lt;/li&gt;
&lt;li&gt;{n} = n回の繰り返し&lt;/li&gt;
&lt;li&gt;{n, } = n回以上の繰り返し&lt;/li&gt;
&lt;li&gt;{n, m} = n回以上, m回以下の繰り返し&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;一致方法&#34;&gt;一致方法&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;最長一致(デフォルト)&lt;/li&gt;
&lt;li&gt;最短一致
&lt;ul&gt;
&lt;li&gt;?を数量詞の最後につける&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;区切り&#34;&gt;区切り&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;^ = カバーする範囲の先頭を行頭に指定&lt;/li&gt;
&lt;li&gt;$ = カバーする範囲の最後を行末に指定&lt;/li&gt;
&lt;li&gt;\b = スペースや改行による単語の区切り 前後につけて単語を見つける&lt;/li&gt;
&lt;li&gt;\B = \b以外の区切り 単語の中の文字列を見つける&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;1文字のメタ文字では機能が逆になる&lt;/p&gt;
&lt;h3 id=&#34;ショートコード&#34;&gt;ショートコード&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;[0-9] = \d&lt;/li&gt;
&lt;li&gt;[^0-9] = \D&lt;/li&gt;
&lt;li&gt;[a-zA-Z0-9_] = \w&lt;/li&gt;
&lt;li&gt;[^a-zA-Z0-9_] = \W&lt;/li&gt;
&lt;li&gt;\n = 改行&lt;/li&gt;
&lt;li&gt;\t = タブ&lt;/li&gt;
&lt;li&gt;\r = リターン&lt;/li&gt;
&lt;li&gt;\f = 改ページ&lt;/li&gt;
&lt;li&gt;[\n\t\r\f ] = \s&lt;/li&gt;
&lt;li&gt;[^\n\t\r\f ] = \S&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;修飾子&#34;&gt;修飾子&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;g(global) = マッチする結果すべてを抽出&lt;/li&gt;
&lt;li&gt;i(case-insensitive) = 大文字と小文字を区別しない&lt;/li&gt;
&lt;li&gt;m(multiline) = ^と$の挙動を変え, 複数行を対象にする&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;日本語&#34;&gt;日本語&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;ひらがな
&lt;ul&gt;
&lt;li&gt;[ぁ-ん]&lt;/li&gt;
&lt;li&gt;[\u3041-\u3096]&lt;/li&gt;
&lt;li&gt;[\x{3041}-\x{3096}]&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;カタカナ
&lt;ul&gt;
&lt;li&gt;[ァ-ヶ]&lt;/li&gt;
&lt;li&gt;[\u30A1-\u30FA]&lt;/li&gt;
&lt;li&gt;[\x{30A1}-\x{30FA}]&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;漢字
&lt;ul&gt;
&lt;li&gt;[亜-煕]&lt;/li&gt;
&lt;li&gt;[々〇〻\u3400-\u9FFF\uF900-\uFAFF]|[\uD840-\uD87F][\uDC00-\uDFFF]&lt;/li&gt;
&lt;li&gt;[々〇〻\x{3400}-\x{9FFF}\x{F900}-\x{FAFF}]|[\x{D840}-\x{D87F}][\x{DC00}-\x{DFFF}]&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;半角文字以外
&lt;ul&gt;
&lt;li&gt;[^\x01-\x7E]&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;応用&#34;&gt;応用&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;フリーダイヤル
&lt;ul&gt;
&lt;li&gt;/0120-((\d{2}-\d{4})|(\d{3}-\d{3}))/&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;市街局番
&lt;ul&gt;
&lt;li&gt;/\d{2, 4}-\d{2, 4}-\d{4}/&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;携帯番号
&lt;ul&gt;
&lt;li&gt;/(090|080|070)-\d{4}-\d{4}/&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;URL
&lt;ul&gt;
&lt;li&gt;/http[s]?://[\w/%&amp;amp;$#?()=~+-]+/&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;メールアドレス
&lt;ul&gt;
&lt;li&gt;/[\w-]+@([/w-]+.)+[a-zA-Z]{2, }&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;感想&#34;&gt;感想&lt;/h2&gt;
&lt;p&gt;とりあえず正規表現が使えそうだったらこのページを参考に書いてみようと思う.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
