数千行、数万行と連なるテキストログを前にして、私はかつて絶望していました。 特定のエラー以外の「Info」や「Notice」といったノイズをすべて消し去りたい。しかし、標準のメモ帳には「特定の文字が含まれる行そのものを消す」という機能が備わっていません。
iOSアプリ開発という、1ピクセルのズレも許されない環境に身を置いている私にとって、手作業で1行ずつ削除するなど論外です。必ずミスが起きますし、何より人生の貴重な時間を浪費したくありませんでした。
「もっと直感的に、iPhoneアプリを触るような感覚で、かつ深夜でも目に優しいダークモードで作業したい。」
そう考えて、私は 167個のツール を自作しました。今回は、私が現場で実際に行っている「行除外」の合理的な手順を共有します。
1. なぜ「標準ツール」での除外は非効率なのか
一般的なテキストエディタの「置換」は、文字を消すことはできても「行」を消すのには向いていません。私たちが実務で直面する以下のケースでは、「行」単位の認識が不可欠です。
- サーバーログ解析: 正常系の通知行を一括で排除し、異常系だけを浮き彫りにする。
- リストのクリーニング: 名簿から「退会済み」フラグの立った行を抹消する。
- コード整理: 膨大なソースからコメントアウト(// や #)が含まれる行を掃除する。
これらを根性で乗り切るのではなく、プログラム(仕組み)で解決するのがエンジニアの作法です。
2. 合理的なエンジニアが選ぶ「3つの整理ルート」
データの量と「重要度」によって、私は以下の3つを使い分けています。
Excel・スプレッドシート(表形式データ向け)
データが最初からセルに分かれているなら、フィルタ機能が安牌です。
- 「フィルタ」を適用し、検索ボックスに除外ワードを入力。
- 抽出された行を全選択して削除。
- フィルタを解除。
ただし、複数のキーワードがある場合、この手順を何度も繰り返すのは苦行です。私は正直、この「繰り返し作業」が嫌いです。
ブラウザ完結型ツール(プレーンテキスト向け)
「わざわざExcelを開くほどでもない」「でも、機密データだから変なサイトには貼りたくない」 そんな時のために、私は 特定文字列を含まない行だけ抽出 というツールを自作しました。
テキストを放り込み、除外したい単語を入れる。それだけで「余分な行」が消えた結果が返ってくる。このシンプルさと、 ダークモード による視認性の高さこそが、私が求めていたUXです。
3. 実演:自作ツールで「ノイズ」を秒速で削ぎ落とす
私の自作ツールを使い、実際にどのようにテキストをダイエットさせるか、その工程を見せます。
このツールを使ってみる →
入力と同時に、条件に合致しない行がリアルタイムで消え去る。このレスポンスの速さが自作のこだわりです。
私流の「クリーンアップ・レシピ」
- 行の除外: まず 特定文字列を含まない行だけ抽出 で不要な行を消す。
- 重複の抹殺: 削った後に残った同じ内容の行を 重複行の削除 で一本化する。
- 仕上げの整形: 空行の削除 で、行を消した後にできた「不自然な隙間」を埋める。
この3ステップを クライアントサイド で実行することで、通信待機時間ゼロで作業が完了します。
4. 私は「サーバーサイド処理」を信頼していない
ここが一番重要な話です。ネット上には便利なWebツールが溢れていますが、私はそれらをあまり信用していません。
特に仕事で扱うログや個人情報を含むリストを、「一度サーバーへ送信して加工する」タイプのサイトに貼り付けるのは、心配性の私には耐えられません。通信経路での傍受や、サーバー側のログにデータが残るリスクがわずかでもあるからです。
私のサイトのツールは、すべて JavaScript による 「ブラウザ内完結処理」 です。 あなたの入力したデータは、あなたの端末から1バイトも外に出ません。通信自体が発生しないので、物理的に漏洩のしようがないのです。この「技術的な誠実さ」こそが、私が167個のツールすべてに貫いている執着です。
5. 結論:道具選びの基準を「機能」から「安全性」へ
テキスト整理という作業は、それ自体に時間をかけるべきものではありません。
- 手作業を捨て、フィルタリングの仕組みに任せる。
- 深夜の作業でも思考を妨げない、ダークモードを備えたUIを選ぶ。
- 何より、データをサーバーに送らない「安全な道具」を手に持っておく。
「無ければ作るしかない」と私が作り上げたこの道具箱が、あなたの作業時間を数時間から数秒へと短縮する助けになれば幸いです。
道具に悩む時間は、もう終わりにしましょう。
目的別に選べるプライベートツール一覧
- 行を自在に操る: 特定文字列を含まない行だけ抽出 / 特定文字列を含む行だけ抽出
- 仕上げにスッキリさせる: 重複行の削除 / 空行の削除 / 行頭・行末のスペース削除
- 高度な処理を求めるなら: 正規表現テストツール / テキスト差分比較