いきなり答える備忘録

Google Workspace・Microsoft 365・LibreOfficeなどに関するメモ

(LibreOffice Calc)文字列中の文字の間1つ1つに任意の文字列をはさむ

 LibreOffice Calcで、セル中の文字列の1つ1つの間に指定した文字列をはさむ方法についてです。
 各文字の間にスペースをはさむとか、ハイフンをはさむといった使用例が考えられます。

  • REGEX関数を使って、文字1つ1つの間に指定した文字列をはさむことができます。

手順

f:id:accs2014:20200125181914p:plain:right:w600

 B2セルに入力されている文字列の各文字の間に「☆」をはさむものとします。

 D2セルに次のように入力します。

=REGEX(B2,"(.)(?=.)","$1☆","g")

 次に文字が続くような文字を、その文字&「☆」にすべて置き換える、という置換を行っています。
 

f:id:accs2014:20200125181919p:plain:right:w550

 結果はこうなります。
 もちろん2文字以上の文字列をはさむこともできます。

 なお、Calcの場合は「=REGEX(B2,"\B","☆","g")」でも近い結果になります。一部記号やスペースの間には何もはさめませんが、目的によってはこちらの方がよいかもしれません。