業務で以下のような文字列を作る必要がありました。
Α★Β★Γ★Δ★Ε★Ζ★Η★Θ★Ι★Κ★Λ★Μ★Ν★Ξ★Ο★Π★Ρ★Σ★Τ★Υ★Φ★Χ★Ψ★Ω★
つまりギリシャ文字が★で区切られているのです。
手元にあるのは以下の文字列だけです。
ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ
どうしましょうか。一つ一つ文字列の間に★の記号を記入しましょうか?
実は簡単に★を挿入する方法があるのです。
<目次>
この方法でできること
文字列の1文字毎に特定の文字列(1文字以上)を挿入できます。
たとえば、今回の例では★を挿入しています。
実行前
ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ
実行後
Α★Β★Γ★Δ★Ε★Ζ★Η★Θ★Ι★Κ★Λ★Μ★Ν★Ξ★Ο★Π★Ρ★Σ★Τ★Υ★Φ★Χ★Ψ★Ω★
方法
特殊文字を用いた検索と置換を行います。
検索する文字列:^? 置換後の文字列:^&★
上記で、検索する文字列の ^? は、任意の1文字を示しています。
[検索する文字列]欄にカーソルを置いて、検索用のオプションをすべてオフにした状態で以下のように探します。
そして、置換後の文字列の ^& は、検索した文字列自体を示しています。つまり、見つかった任意の1文字なのです。
これは、[置換後の文字列]欄にカーソルを置いて、以下のように探します。
このようにして、「見つかった文字列」を「見つかった文字列」+「★」で置換をすれば、1文字ごとに★を挿入できるというわけです。
おまけのクイズ1
では、2文字毎に文字列を挿入するにはどうしたらよいのでしょうか?
任意の1文字なので、、、、そうです。
検索する文字列:^?^?
置換後の文字列:^&★
以下のようになります。
ΑΒ★ΓΔ★ΕΖ★ΗΘ★ΙΚ★ΛΜ★ΝΞ★ΟΠ★ΡΣ★ΤΥ★ΦΧ★ΨΩ
なお、改行記号も1文字に数えられますからご注意ください。
おまけのクイズ2
では、1文字毎に改行するにはどうしたらよいのでしょうか?
★の代わりに段落記号(改行記号)を使います。
検索する文字列:^?
置換後の文字列:^&^p
以下のようになります。
Α
Β
Γ
Δ
Ε
Ζ
Η
Θ
Ι
Κ
Λ
Μ
Ν
Ξ
Ο
Π
Ρ
Σ
Τ
Υ
Φ
Χ
Ψ
Ω