@Implode(@Trim(Comments); "  ")

こんな式の説明をしようというのが本作文の目的です。

@Implode関数は通常、複数値の項目や変数を、ひとつの文字列につなぎ合わせるために使います。

@Implode( ~ ; separator )

開発する方は、その区切り文字(Separator)に何を使っているでしょうか。

どこが区切りだったかわからなくならないよう、
「項目に含まれうる文字は区切り文字に使わない」のが原則でしょう。

例えば、人の氏名のリストは「スペース」ではつながないと思います。
Taro Yamada
Hanako Suzuki
Jane Smith
という内容の文字配列 UserNames を、もしもスペースでつないだら。

@Implode( UserNames; " " )

結果は
Taro Yamada Hanako Suzuki Jane Smith
となってしまいます。姓名間もスペースだから、どこが人と人の区切りかわかりません。

同じように、例えば、「ハイフン」(-) は、郵便番号や電話番号の配列をつなげるときには使用しないのが無難でしょう。


じゃあ、名前や番号とかの多少規則性のありそうな項目ではなく、
自由に入力してよい項目をつなげるとき、どんな区切り文字にすればよい?


項目内には基本、どんな文字だって含まれることがありえます。
縦棒 "|" など、一般の文では使われない記号を採用しても、「絶対誰も使わない」、とまでは言い切れない、
その文字が運悪くデータ上で使われていた場合に、
あるいは…設計を知りえた悪意ある人が意図的にその区切り文字を含めた場合に、
正しく再分割できない可能性を排除できません。

そこで冒頭の式に戻ります。

@Implode(@Trim(Comments); "  ")

つなぎたい対象、「Comments」を、区切る文字は、…スペースじゃん?

と、一見わかりづらいですが、引用符(")に囲まれているのは「スペース2文字」です。
もしくは「全角スペース」でもいけると思います。

つなげる対象の項目には@Trimをかけて、余分なスペースを詰めているため、「スペース2文字」や「全角スペース」は存在しない。
ゆえに、「項目に含まれうる文字は区切り文字に使わない」ことを満たせます。

Commentsの値がこんな感じだったとしても
  みなさま    こんにちは!
それでは  今日は    この辺で
・・・ 
式の結果は
”みなさま こんにちは!  それでは 今日は この辺で・・・"

元の値に含まれるスペース2文字以上は、@Trimで強制的に詰められます。
ゆえにスペース2文字は必ず区切り箇所(「それでは」の前)のみに。
たとえば@Implodeと逆の働きをする@Explode関数で、再度正しく分離することができます。


見た目の「わかりづらさ」から、意図が分かるようにコメントのRem文はいれるべきかも、
また、「元のコメントが1文字でも変わっては困る、スペースも詰めてはだめ」という場合はごめんなさい。

もうひとつ気になる点がありますが、これについては別途。

<2020Apr26追記>
すみません、別途のつづきはいまも未完です💦