BunBackupは、フォルダー単位でしかバックアップできない|ファイルを指定したバックアップはできない仕様である
BunBackupの*.lbk
ファイル〔ユニコード/CR+LF〕の仕様
- 文字コード:ユニコード〔Unicode〕
- 改行コード:CR+LF
趣旨:サクラエディタのマクロでBunBackupの*.lbk
ファイル〔ユニコード/CR+LF〕を編集しやすいように形式を変更してから、中身を編集して、最後に元の形式に戻す
サクラエディタのマクロのディレクトリ〔フォルダー〕を指定する
サクラエディタにおいて、画面上部にあるメニューの[設定(O)]→[共通設定(C)]→[マクロ〔タブ〕]→[マクロ一覧]の行の検索窓にmacroフォルダーへのパス〔一例:C:\Drawers\Freeware\Writing\Sakuraeditor\sakura-tag-v2.4.2-build4203-a3e63915b-Win32-Release-Exe\macro
〕を記述→[OK]→窓が閉じる
●●● Windows環境再構築中につき、記事が工事中 ●●●
■ 正規表現における量指定子と使用例(基本パターン + 最小マッチ)
【1】+
:1回以上の繰り返し(貪欲)
- 正規表現:
a+
- 対象文字列:
aaab
- マッチ結果:
aaa
👉 a
が1回以上続く部分を、できる限り多くマッチします。
【2】*
:0回以上の繰り返し(貪欲)
- 正規表現:
a*
- 対象文字列:
aaab
- マッチ結果:
aaa
👉 a
が0回以上繰り返される部分にマッチ。何もない部分にもマッチ可能。
【3】?
:0回または1回の繰り返し
- 正規表現:
a?
- 対象文字列:
aaab
- マッチ結果(全体検索時):
a
, a
, a
, ""
(空文字)
👉 各位置において a
が1つあればマッチ。なければ空でもマッチします。
【4】{n}
:ちょうどn回の繰り返し
- 正規表現:
a{3}
- 対象文字列:
aaabaaa
- マッチ結果:
aaa
👉 a
がちょうど3回連続している部分にのみマッチ。
【5】{m,n}
:m回以上、n回以下の繰り返し
- 正規表現:
a{2,4}
- 対象文字列:
aaaaab
- マッチ結果:
aaaa
(貪欲なので最大限マッチ)
【5-1】{,n}
:0回以上、n回以下の繰り返し({0,n}
と同義)
- 正規表現:
a{,2}
- 対象文字列:
aaa
- マッチ結果(全体検索時):
aa
, a
【5-2】{m,}
:m回以上の繰り返し
- 正規表現:
a{2,}
- 対象文字列:
aaaaa
- マッチ結果:
aaaaa
■ 最小マッチ(非貪欲)指定付きの量指定子と使用例
〔1〕+?
:1回以上、できるだけ少なくマッチ
- 正規表現:
a+?
- 対象文字列:
aaab
- マッチ結果(全体検索時):
a
, a
, a
👉 貪欲だと1回で aaa
にマッチするが、最小マッチでは1文字ずつ分割されます。
〔2〕*?
:0回以上、できるだけ少なくマッチ
- 正規表現:
a*?
- 対象文字列:
aaab
- マッチ結果(全体検索時):
""
, ""
, ""
, ""
, ""
(5つ)
👉 a
を0回で済ませるのが最小なので、すべての位置で空文字にマッチ。
〔3〕??
:0回または1回、できるだけマッチしない
- 正規表現:
a??
- 対象文字列:
aaab
- マッチ結果(全体検索時):
""
, ""
, ""
, ""
, ""
(5つ)
👉 貪欲な a?
なら a
にマッチするが、a??
は空文字優先。
〔4〕{n}?
:ちょうどn回(※最小マッチの意味はない)
- 正規表現:
a{3}?
- 対象文字列:
aaab
- マッチ結果:
aaa
👉 {3}
は「ちょうど3回」なので、最小/最大の概念は関係ない。?
は無意味。
〔5〕{m,n}?
:m回以上n回以下、できるだけ少なくマッチ
- 正規表現:
a{2,4}?
- 対象文字列:
aaaaa
- マッチ結果:
aa
👉 a
を2〜4回の間で、最小(2回)だけマッチ。
〔5-1〕{,n}?
:0回以上n回以下、できるだけ少なくマッチ
- 正規表現:
a{,3}?
- 対象文字列:
aaaaa
- マッチ結果(全体検索時):
""
, ""
, …
👉 最小なので0回でマッチする位置が優先される。
〔5-2〕{m,}?
:m回以上、できるだけ少なくマッチ
- 正規表現:
a{2,}?
- 対象文字列:
aaaaa
- マッチ結果:
aa
👉 a
が2回以上の中で**最小(2回)**だけマッチ。
✅ 最後にポイントまとめ:
{n}?
は構文的には正しいが、意味が変わらないため非実用的。
- 実際の処理や抽出で「最小限に抑えたい」場合は、
+?
、*?
、{m,n}?
を多用。
- パターンの設計では、データの構造(区切り文字・境界など)と合わせて使うことが重要。
必要に応じて、これらの正規表現を含むコード(Python、JavaScriptなど)やツール(例:grep、VS Codeの検索)での活用例も紹介できます。どの環境で使う予定ですか?
Vivliostyle
Vivliostyleのプロジェクトは、まったく支持されていないようだ。
敗北が確定しているのだから、やめればいいと思う。
独自のJavaScriptをつくって頑張ってはいるけれども、技術者たちの時間・手間を奪い取るだけで、まったく無駄なことをしていると思う。
理由は簡単で、CSS組版というのは、結局、EPUBの[stylesheet.css]を拡張したものであるからだ。
サクラエディターの正規表現エンジンであるOnigmoは[置換前文字列の指定]に改行を含む表現が使えない|改行を別文字に置換したうえで改行を取り去って置換操作を終えた後に別記号を改行記号に戻す操作が必要となる
C:\Users\%USERNAME%\AppData\Roaming\sakura
以上は、サクラエディターのマクロを保存しておくディレクトリのパスです。
※以下に記載したコード〔定義文〕を、文字コード[Shift-JIS]、改行コード[CR+LF]で、[YOUR-FAVORITE-NAME.mac]というファイル名で[C:\Users%USERNAME%\AppData\Roaming\sakura]に保存し、サクラエディターの上部の操作メニューで[ツール(T)]>[名前を指定してマクロ実行(E)]の中で該当ファイルを[左クリック]〔ダブル〕して実行します。
サクラエディターのマクロファイルは文字コードはSJIS〔シフトジス〕で保存しないと日本語を文字置換できない
FileCode Checkerでマクロファイルの文字コードをまとめてチェックすることもできます
■FileCode Checkerの詳細情報 : Vector ソフトを探す!
文字コードの変更
文字コードの変更がサクラエディターそれ自体で行なえます|ダウンロードするのはインストーラーでいいと思います[sakura-tag-v2.4.1-build2849-ee8234f-Win32-Release-Installer.zip]
■Releases · sakura-editor/sakura · GitHub
文字コードの変更がTeraPadで行なえます
■TeraPad 公式ダウンロードサイト
[サクラエディタで正規表現を使用し、大文字・小文字変換]に一部動作しない表現があったので、この記事で修正しているのです
■サクラエディタで正規表現を使用し、大文字・小文字変換 - Qiita
サクラエディターのOnigmoですべての文字を小文字に置換する
C:\Users\%USERNAME%\AppData\Roaming\sakura
以上は、サクラエディターのマクロを保存しておくディレクトリのパスです。
※以下に記載したコード〔定義文〕を、文字コード[Shift-JIS]、改行コード[CR+LF]で、[YOUR-FAVORITE-NAME.mac]というファイル名で[C:\Users%USERNAME%\AppData\Roaming\sakura]に保存し、サクラエディターの上部の操作メニューで[ツール(T)]>[名前を指定してマクロ実行(E)]の中で該当ファイルを[左クリック]〔ダブル〕して実行します。
必要なファイルのダウンロード〔オリジナルに制作した作品の著作権は放棄していません〕
LibreOfficeのダウンロードとインストール
■download | LibreOffice - オフィススイートのルネサンス
サクラエディタのダウンロードとインストール
■Releases · sakura-editor/sakura · GitHub
[sakura-tag-v2.4.2-build4203-a3e63915b-Win32-Release-Installer.zip]に類するファイル名をクリックしてダウンロードし、そのファイル名の上で[右クリック]→[すべて展開]を行ない、展開されたインストーラー〔実行ファイル=.exe〕を実行してサクラエディタをインストールする。
Grepやマクロで文字置換を頻繁に行なうテキストエディタ
サクラエディタ:【無料】【Windows専用】
■【Mac】サクラエディタに似ている無料のテキストエディタはこれです。 | EarthEcoTech
サクラエディタは、【無料】の鬼雲〔Onigmo(Oniguruma-mod)〕〔内容:bregonig.dll 〕と呼ばれる正規表現エンジンを搭載しています。
鬼雲とサクラエディタのマクロとを合わせることにより、正規表現を使った、強力な文字検索、文字置換が可能です。
鬼雲は[検索対象/被置換対象]を記述するオペランドに、改行を含む記述ができない、という難点を抱えています。
鬼雲がもつ[どんなに一行が長くても置換できる]という長所を獲得するためには、その難点を甘受しなければならない事情があるのでしょう。
私はスマホを買ったこともないしiPod touchやiPadで挫折した|なぜだかわかった|[いちいち視認して該当箇所を押す]のが嫌いなのだ
結局、[キーボードで操作する]のが最もラクだということである。
FILMTNとATOKとVZエディタの頃のPCのほうが、現在のPCよりも、ずいぶん使いやすかった。
日本語入力は、OASYSのキー配列がラクだった。
[感じ切る] → [感じきる]|(い|き|ぎ|し|じ|ち|ぢ|に|ひ|び|ぴ|み|い|り|い)切([っらりるれろ])
S_ReplaceAll(' (い|き|ぎ|し|じ|ち|ぢ|に|ひ|び|ぴ|み|い|り|い)切([っらりるれろ]) ', ' $1き$2 ', 44);
副詞|サクラエディタ|マクロ
日本語の形容詞・形容動詞は、be動詞に相当する[あり]を内蔵していますので、日本語の形容詞・形容動詞は、外国語基準でいうと、[動詞]に含まれます。
サクラエディタ|正規表現|[Saa]または[サアラ]を含まない行を削除|^(?!.*(Saa|サアラ)).*$
^(?!.*さえずり).*$
^(?!.*(Saa|サアラ)).*$
■正規表現で、ある文字列を含まない行を抽出する方法 - Qiita
(あ|か|が|さ|ざ|た|だ|な|は|ば|ぱ|ま|や|ら|わ)
([あかがさざただなはばぱまやらわ])
(あ|か|が|さ|ざ|た|だ|な|は|ば|ぱ|ま|や|ら|わ)
(い|き|ぎ|し|じ|ち|ぢ|に|ひ|び|ぴ|み|い|り|い)
([いきぎしじちぢにひびぴみいりい])
(い|き|ぎ|し|じ|ち|ぢ|に|ひ|び|ぴ|み|い|り|い)
(う|く|ぐ|す|ず|つ|づ|ぬ|ふ|ぶ|ぷ|む|ゆ|る|う)
([うくぐすずつづぬふぶぷむゆるう])
(う|く|ぐ|す|ず|つ|づ|ぬ|ふ|ぶ|ぷ|む|ゆ|る|う)
(え|け|げ|せ|ぜ|て|で|ね|へ|べ|ぺ|め|え|れ|え)
([えけげせぜてでねへべぺめえれえ])
(え|け|げ|せ|ぜ|て|で|ね|へ|べ|ぺ|め|え|れ|え)
(お|こ|ご|そ|ぞ|と|ど|の|ほ|ぼ|ぽ|も|よ|ろ|お)
([おこごそぞとどのほぼぽもよろお])
(お|こ|ご|そ|ぞ|と|ど|の|ほ|ぼ|ぽ|も|よ|ろ|お)
(あ|い|う|え|お|っ)
([あいうえおっ])
(あ|い|う|え|お|っ)
(か|き|く|け|こ|っ)
([かきくけこっ])
(か|き|く|け|こ|っ)
(が|ぎ|ぐ|げ|ご|っ)
([がぎぐげごっ])
(が|ぎ|ぐ|げ|ご|っ)
(さ|し|す|せ|そ|っ)
([さしすせそっ])
(さ|し|す|せ|そ|っ)
(ざ|じ|ず|ぜ|ぞ|っ)
([ざじずぜぞっ])
(ざ|じ|ず|ぜ|ぞ|っ)
(た|ち|つ|て|と|っ)
([たちつてとっ])
(た|ち|つ|て|と|っ)
(だ|ぢ|づ|で|ど|っ)
([だぢづでどっ])
(だ|ぢ|づ|で|ど|っ)
(な|に|ぬ|ね|の|っ)
([なにぬねのっ])
(な|に|ぬ|ね|の|っ)
(は|ひ|ふ|へ|ほ|っ)
([はひふへほっ])
(は|ひ|ふ|へ|ほ|っ)
(ば|び|ぶ|べ|ぼ|っ)
([ばびぶべぼっ])
(ば|び|ぶ|べ|ぼ|っ)
(ぱ|ぴ|ぷ|ぺ|ぽ|っ)
([ぱぴぷぺぽっ])
(ぱ|ぴ|ぷ|ぺ|ぽ|っ)
(ま|み|む|め|も|っ)
([まみむめもっ])
(ま|み|む|め|も|っ)
(や|い|ゆ|え|よ|っ)
([やいゆえよっ])
(や|い|ゆ|え|よ|っ)
(ら|り|る|れ|ろ|っ)
([らりるれろっ])
(ら|り|る|れ|ろ|っ)
(わ|い|う|え|お|っ)
([わいうえおっ])
(わ|い|う|え|お|っ)
[ですます調]|調整中
S_ReplaceAll('[\r\n]+', '\n', 148);
S_ReplaceAll(' ', '、\n', 44);
S_ReplaceAll('([でま])す(か|かね|よね|よ|ね|)', '$1す$2?●●●', 44);
S_ReplaceAll('([でま])す(よ? )', '$1す$2。●●●', 44);
S_ReplaceAll('(でしょう|でしょ)', '$1? ●●●', 44);
S_ReplaceAll('(でしょう)(? )', '$1。●●●', 44);
S_ReplaceAll('[\n]+', '\r\n', 44);
S_ReDraw(0);
この記事の[正規表現]とはサクラエディタに付いている正規表現エンジン〔bregonig.dll with Onigmo〕の正規表現です
■K.Takata’s software: bregonig.dll
Onigmo文字コードプロパティ
■Onigmo/UnicodeProps.txt at master · k-takata/Onigmo · GitHub
文字コードプロパティ
■
サクラエディタ|正規表現|約物|[\p{P}]
[\p{P}]
サクラエディタ|正規表現|カタカナ|[\p{Katakana}ー]
[\p{Katakana}ー]
[\x{30A1}-\x{30FA}]
■漢字、ひらがな、カタカナにマッチさせる方法 | 正規表現
サクラエディタ|正規表現|ひらがな|[\p{Hiragana}ー]
[\p{Hiragana}ー]
[\x{3041}-\x{3096}]
■漢字、ひらがな、カタカナにマッチさせる方法 | 正規表現
サクラエディタ|正規表現|サロゲートペアの漢字|[\x{2000B}-\x{2A6B2}]
[\x{2000B}-\x{2A6B2}]
■サロゲートペア - 闘うITエンジニアの覚え書き
■Pre-Practice Blog: 文字列の中から漢字を抽出する正規表現を考えてみる /[々〆〇〻㐂-頻]+/g
■Unicodeで「漢字」の正規表現 – ものかの
行なう
行(い|う|え|お|っ|わ)●●●おこな$1
S_ReplaceAll('行(い|う|え|お|っ|わ)', 'おこな●●●$1', 44);
行なう
行(か|き|く|け|こ|っ)●●●往$1
S_ReplaceAll('行(か|き|く|け|こ|っ)', '往●●●$1', 44);
[行って]は[行なって]と[いって]の両方に読める
言う → いう
言(う|え|お|っ|わ)●●●い$1
S_ReplaceAll('言(う|え|お|っ|わ)', 'い$1', 44);
漢字の開く・閉じる
漢字 → ひらがな化すること|開く(ひらく)
漢字をひらがなに直すことを「開く」という。
しかし「開く」という一般動詞を「漢字をひらがなに直す」意味として使うのは、新聞社や出版業界ぐらいであった。
だから「開く」という言葉を使うごとに「漢字をひらがなに直すこと」という注釈を入れる必要がしょうじる。
一般人である私たちが新聞社や出版業界の業界人に迎合する必要はない。
「開く」というジャーゴンを使わずに「ひらがな化する」という「読んで字のごとし」の用語を新たに打ち立てるのがよいであろう。
サクラエディタ
■サクラエディタ - Google 検索
サクラエディタ|正規表現
■サクラエディタで使える正規表現のメモ - Qiita
■連続改行を一回改行にするには? | サクラエディタ過去ログ
■サクラエディタで使える正規表現 - Google 検索
DADADADA.mac
※以下に記載したコード〔定義文〕を、文字コード[Shift-JIS]、改行コード[CR+LF]で、[YOUR-FAVORITE-NAME.mac]というファイル名で[C:\Users%USERNAME%\AppData\Roaming\sakura]に保存し、サクラエディターの上部の操作メニューで[ツール(T)]>[名前を指定してマクロ実行(E)]の中で該当ファイルを[左クリック]〔ダブル〕して実行します。