初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2017-06-09 17:59:04

kig
Member

空白の除去

はじめまして。
aaa bbb cdefgh ijklm nop
といった文字列があります。

このような文字列の1番目と2番めのスペースを取り除きたい(3番目以降のスペースは取り除かない)のですが、どのようにしたらよいでしょうか?

aaa bbb cdefgh ijklm nop が
aaabbbcdefgh ijklm nop になるようにしたいです。

初歩的な質問で申し訳ございませんが、よろしくお願いいたします。

Offline

#2 2017-06-09 18:48:21

Hiro
Member

Re: 空白の除去

ループ計算式で1単語づつ連結を精査しながら求める方法。

Let([
   $lst=Substitute(文字列フィールド; [" ";¶]);
   $i=0;
   $res="";
   $fnc=
      "Case($i=ValueCount($lst); $res;
         Let([
            $i=$i+1;
            #itm=GetValue($lst;$i);
            $res=Case($i<4; $res & #itm; $res &Char(32)& #itm)
         ]; Evaluate($fnc))
      )"
];
   Evaluate($fnc)
)

Offline

#3 2017-06-09 18:59:05

kig
Member

Re: 空白の除去

Hiroさん早速の回答本当にありがとうございます。
試してみたところ希望どおりの動作をしてくれています!

Let関数など使ったことがないので、教えて下さったプログラムを勉強して理解するようにします。
取り急ぎ、深く御礼申しあげます。
たいへんありがとうございます。

Offline

#4 2017-06-09 20:31:29

kig
Member

Re: 空白の除去

手元にある本を読みながらHiroさんのプログラムを見ていますが、難しくて理解できません。
たいへん申し訳ありませんが、どのような処理をしているのか教えていただくことはできませんか?

Offline

#5 2017-06-10 04:13:12

Hiro
Member

Re: 空白の除去

ちょうどご近所の スレッド(id=6507) で同じようなループ計算式の説明をしていますので、ご覧なってみてください。

Offline

#6 2017-06-10 09:22:26

チポ
Member

Re: 空白の除去

もう少し分かりやすい式を

  Replace ( Replace ( テキスト ; Position ( テキスト ; " " ; 1 ; 2 ) ; 1 ; "" ) ; Position ( テキスト ; " " ; 1 ; 1 ) ; 1 ; "" )

2番目と1番目のスペースの位置を求めて、それを消去
しています。

これなら解析もできやすいのでは。

Offline

#7 2017-06-10 09:27:23

kig
Member

Re: 空白の除去

ありがとうございます。
なんとか理解できました。
今後ともよろしくお願いいたします。

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.007 seconds, 8 queries executed - Memory usage: 511.82 KiB (Peak: 516.73 KiB) ]