技術メモ

改行だけの行を削除して行を詰める正規表現を紹介

テキストエディタの改行だけの行を削除して詰めたい場合に、使用するテクニックを紹介します。手作業でやっている人を良く見かけて、案外知らない人が多かったりするので、紹介してみます。解決したい事象下記のキャプチャの青矢印で示したような空行を、削除して行を詰めます。ここではサクラエディタを例に紹介しますが、エディタについては正規表現が使用できればなんでもOKです。解決したい空行が含まれるテキストの例改行コードのみの行一括削除手順置換の実行前テキストエディタの置換メニューを開きます。(Ctrl+R)置換ダイアログで置換前と置換後に下記の指定をして、全ての行に置換を実施します。入力項目入力値説明置換前^\r\n行頭の次の文字がCRLFの改行コードになっている行を指定しています。置換後何も指定していません。つまり置換前にヒットしたものを空に置換することによって、削除します。置換ダイアログ入力値置換の実行後置換の実行後は下記のキャプチャの通りになりました。全て置換すると空行が削除され、文章がある行だけになります。数文字程度の正規表現を覚えておくだけで簡単にできる作業ですが、覚えておくだけで作業効率が格...
技術メモ

改行コードの不揃いを正規表現で統一させる方法を紹介

改行コードがバラバラのテキストファイルを、正規表現によって統一する方法を紹介します。解決したい事象改行コードがバラバラのテキストをCRLFかLFのどちらかに統一します。ここではサクラエディタを例に紹介しますが、エディタについては正規表現が使用できればなんでもOKです。例以下の画像では、青矢印の個所の改行コードが他と異なっています。改行コード統一手順置換前テキストエディタの置換ダイアログを開きます。(Ctrl+R)置換ダイアログの置換前と置換後に下記の指定をして、全ての行に置換を実施します。※ダイアログの「正規表現(E)」にチェックを入れるのを忘れないでください。入力項目入力値説明置換前\r\nCRLFの改行コードを指定置換後\nLFの改行コードを指定置換ダイアログ入力値置換後全て置換を実施すると、下記の画像の通りすべての改行コードが全てLFに統一されます。CRLFに統一したい場合上記の場合はLFに統一されています。Windowsの改行コードであるCRLFに統一したい場合は続けて、下記の手順を実行します。置換前置換ダイアログの置換前と置換後に下記の指定をして、全ての行に置換を実施します。...
VBA

Windows上のフォルダにあるファイルを、Excelシート上に一覧表示するVBAのサンプルコード

Windows上のフォルダにあるファイルを、Excelシート上に一覧表示するVBAのサンプルコードを公開してみます。仕様画面仕様シートの「検索パス」のセルに検索対象のフォルダのパスを入力しています。右側の「一覧表示」ボタンを押したときにファイル一覧が出力されます。ファイル名ファイルのフルパスファイルへのリンクソースコードDim RowNo As LongDim No As LongSub ボタン1_Click() Application.ScreenUpdating = False RowNo = 5 No = 1 Call ClearList Call FileSearch(Sheets(1).Cells(2, 2)) Application.ScreenUpdating = True End Sub'一覧初期化Sub ClearList() Dim lastRow As Long lastRow = Cells(Rows.Count, 1).End(xlUp).Row Sheets(1).Rows("5:" & Cells.Rows.Count).Delete End Sub'ファ...
VBA

REST APIを利用して、郵便番号一覧から住所を求めていくVBAのサンプルコード(郵便番号検索API版)

REST APIを利用して、郵便番号一覧から住所を求めていくVBAのサンプルコードを公開してみます。ここでは「郵便番号検索API」のサービスを利用してコードを作成します。使用するWebAPIExcel単体で住所情報の取得・検索はできないので、下記「郵便番号検索API」の力を借りています。サービス名郵便番号検索API運営zip.cgis.bizURL郵便番号検索API(概要郵便番号検索APIでは、郵便番号から住所を検索するWEBサービスAPIを無料提供しております。仕様画面仕様シートのA列に住所を求めたい「郵便番号」の一覧を入力しています。シートの右側に住所を出力するための実行ボタンが配置されています。実行ボタンを押下すると、シートのB列とC列に「住所」と「住所(カナ)」が出力されます。ソースコードSub ボタン1_Click() Dim objXMLHttp As Object, zipArr Dim yubinNo As Long Dim line As String Dim splitLine() As String Dim i As Long i = 2 '行番号 Do Whil...
《広告》