実践 Atomと正規表現で検索置換してみた1
人からもらったCSVのデータを整形してRubyのハッシュや配列
にするのに、まだウロ覚えの正規表現を使ってみた。
まずは、Part1として復習を兼ね、必要そうな正規表現を思い出してみる。
Atomでの実際の検索置換はPart2で書いているので、せっかちな方はリンク先に飛んで頂ければと思います。
元のデータ
Tokyo,130,,
Kanagawa,110,,
Saitama,105,,
Chiba,108,,
最終形態
この状態にしたい。
{ Tokyo: 130, Kanagawa: 110, Saitama: 105, Chiba: 108 }
必要そうな知識
必要となりそうな正規表現の知識の候補は以下となる。
実際にPart2を書いてからこのPart1を見直すと必要なかった
ものもあったが、正規表現の勉強&復習という観点から、敢えてこのままにしてきますが、ご容赦下さい。
(1).行頭を抽出
(2).行末を抽出
(3).改行箇所を抽出
(4).英字で書かれている箇所の抽出
(5).数字で書かれている箇所の抽出
(6).カンマが複数書かれている箇所の抽出。
答え
(1).行頭を抽出
^
(2).行末を抽出
$
(3).改行箇所を抽出
\n
(4).英字で書かれている箇所の抽出
[a-z]
ただし、これだと文字単位で抽出されるので
単語単位で抽出したいなら
1回以上の繰り返しのうち最長
を意味する
[a-z]+
(5).数字で書かれている箇所の抽出
\d
ただし、これだと1文字単位で抽出されるので
まとまりで抽出したいなら
1回以上の繰り返しのうち最長
を意味する
\d+
(6).カンマが複数書かれている箇所の抽出。
,{2}
ここで使っているのは{n,m} の量指定子。直前の文字(ここで言えばカンマ)が n 個以上、m 個以下
という意味なる。今回は 2以上
だけでよいので {n} の形だけでよい。
実際にAtomでの検索置換はPart2にて。
Author And Source
この問題について(実践 Atomと正規表現で検索置換してみた1), 我々は、より多くの情報をここで見つけました https://qiita.com/gestalt/items/d9883014344992183191著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .