0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

サクラエディタ、エクセルを使用したデータ加工について

Posted at

1、起きた事象

DTOの内容が記載されている仕様書とソースの内容が乖離していた。
ソースを正として仕様書を修正する必要があったが、定義されている項目数が
多いため、仕様書に足りていない項目を把握するのに時間がかかってしまう。

2、教えてもらった内容

サクラエディタの置換機能を使用して、ソース内容を整形する。
整形した内容と仕様書の記載内容をエクセルに貼り付け、確認する。

3、教えてもらった内容の補足や調べた内容

(1)サクラエディタの機能
   (i)左の空白を削除:選択した行の左にある空白を削除する機能
   (ii)置換:行ごとに指定した語句を別な語句に変換する機能

(2)正規表現
   .:任意の1文字
   *:直前の文字が0回以上繰り返すことを意味します。
   ^:行の先頭
   ¥r¥n:改行コード
   ¥t:タブ区切り

(3)エクセルで確認した内容
  仕様書とソースに記載されている項目の
  並び順が同じなので、貼り付けた項目の隣同士を
  「=」で比較し、Trueを返すことで、一致していると判断する。

4、実際に使用した方法

(1)DTOの定数をコピーして、サクラエディタに貼り付ける。

・DTO_ソース内容

namespace SampleDto
{
    public class Sample1
    {
    <summary>サンプル項目1</summary>
        private int number { get; set; }
        <summary>サンプル項目2</summary>
        private string Name { get; set; }
        <summary>サンプル項目3</summary>
        private degimal price { get; set; }
        <summary>サンプル項目4</summary>
        private decimal amount { get; set; }
        <summary>サンプル項目5</summary>
        private string nirvana { get; set; }
        <summary>サンプル項目6</summary>
        private string boobieTrap { get; set; }
    }
}

・サクラエディタ貼り付け内容
image.png

(2)貼り付けた項目を選択し、下記操作を行う。
   タブ:編集 → 整形 → 左(先頭)の空白行を削除

・整形後_サクラエディタ
image.png

(3)エクセルに貼り付けたい項目だけを残せるよう「置換」する内容を考える
  (ⅰ)残したい内容について
      物理名(ソースに記載されているnumber、Nameなど)

  (ⅱ)不要な項目
     ・<summary>タグで囲んだ箇所
     ・prrivateから物理名までの箇所
     ・{ get; set; }
     ・置換後の項目間の空白行

  (ⅲ)置換機能で不要な項目を削除する方法
     下記内容を置換前に記載して、置換後の箇所に何も記載しない
     ・<summary>.*
      →「.*」で任意の語句が0回以上 = すべての語句が対象となる
     ・private int
     ・private string
     ・private degimal
     ・{ get; set; }
     ・^¥r¥n

(4)置換を実施

・「<summary>.*」置換後
image.png

・「private int、string,degimal」置換後
image.png

・「{ get; set; }」置換後
image.png

・「^¥r¥n」置換後
image.png

(5)データの並び順を変更する
  縦に並んでいるデータを横に並ぶように変更。
 
 (i)変更方法
    各項目の終わり箇所にある改行コードを任意の文字に変換。
    任意の文字をタブ区切りに変換

 (ii)置換方法
    ・置換前に「¥r¥n」、置換後に「任意の文字」を入力。
    ・置換前に「任意の文字」、置換後に「¥t」を入力

・置換前に「¥r¥n」、置換後に「任意の文字」を入力。
image.png

・置換前に「任意の文字」、置換後に「¥t」を入力
image.png

(6)仕様書の項目と整形した内容をエクセルに貼り付ける。
  貼り付けた項目を「=」で判定する。
image.png
※Excelがないので、代用でスプレッドシートを使用しています。。。。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?