指定した文字列の取得

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
返信する
メッセージ
作成者
GTR

指定した文字列の取得

#1 投稿記事 by GTR »

指定された文字列をEditBox1から取得したいのですが、関数が分かりません。
どういう関数を使えば良いでしょうか?
使用例もできれば書いていただきたいです。
7
記事: 473
登録日時: 2005年5月31日(火) 18:51
お住まい: 新潟県
連絡する:

Re: 指定した文字列の取得

#2 投稿記事 by 7 »

> 指定された文字列をEditBox1から取得したいのですが、関数が分かりません。
これって、エディットボックスから取得した文字列に指定された文字列が含まれているかどうかってことですよね。

> どういう関数を使えば良いでしょうか?
InStr関数を使えば良いんじゃないでしょうか。

> 使用例もできれば書いていただきたいです。
GTR

#3 投稿記事 by GTR »

そうではありません。
初めから取得する文字列は決まっていて、
EditBoxにも書かれていると想定してください。
説明不足でした。
7
記事: 473
登録日時: 2005年5月31日(火) 18:51
お住まい: 新潟県
連絡する:

#4 投稿記事 by 7 »

> 初めから取得する文字列は決まっていて、
> EditBoxにも書かれていると想定してください。
ですから、それは「取得する文字列」を返すだけで良いんじゃないでしょうか?

EditBox1に "123456789" と入力されているとして、EditBox1の内容から「取得する文字列」 "123" だけを取得したい場合、EditBox1の内容に "123" が含まれるか判断して、含まれるなら "123" を返すだけで良いと思うんです。
さっき提示したコードはそういうつもりで書いたコードなんですけど...。
さっきのコード動かしてみましたか?
取得したい文字列は "指定された文字列" であり、EditBox1に "指定された文字列" という文字列が含まれているなら、 "指定された文字列" という文字列が表示されるんですけど。(ややこしいな)

本当にエディットボックスから指定された文字列を取得したいなら、エディットボックスの文字列を全部取得して、InStr関数で取得したい文字列が存在するか確認して、存在するなら戻り値を利用してどの位置から文字列を取得するか取得して、「取得したい文字列」の長さを取得してどこまで文字列を取得するか取得して、それらを判定してエディットボックスの内容から文字列を抜き取れば可能ですけど、これはさっきも書いたように「取得する文字列」を返すだけで同じことができるんです。

はっきりと書きますけど、エディットボックスから指定された文字列を抜き出す、っていうのは美しいやり方ではありません。

もしこれがGTRさんの望む回答じゃない場合、言葉の選び方、状況の説明、など質問の仕方を変えてください。
数学も苦手ですけど国語も得意じゃないので自分の読解力ではこういう意味にしか捉えられません。
とりえあず自分が最善だと思う、「エディットボックスから指定された文字列を取得する」っていう方法はさっき書いた通りです。
返信する