dポイントプレゼントキャンペーン実施中!

 すいませんが、内容的に文字列から一定の文字列を削除したい
場合のソースについて教えてください。

 内容的には、
 strrep ("44 25 15 22 45", "15", "")
の44 25 15 22 45の部分をa1とかの変数に変えて
起動するようにしたいのです。

 a1に変えてしまうとそのままans=a1となってしまいうまくいきません。
どなたか教えてください。


  

A 回答 (2件)

??


a1は文字列なんでしょうか?
だとすると
strrep(a1,'15','');
で所望の動きをすると思うのですが…
それともそういうことではないんでしょうか?

この回答への補足

 回答ありがとうございます。
 44 25 15 22 45の部分をa1とかの変数に変えてがわかりづらくすいませんでした。
 a1=44 25 15 22 45という事です。

 それで出てくる結果が15を取り除いた44 25 22 45で答えが出てきてほしいということです。なにとぞお願いします。

補足日時:2010/03/08 22:23
    • good
    • 0

No.1のKulesです。



ということはa1は文字列ではなく数値列で、
そこから15のみを除きたいといったことでしょうか?
文字列操作でしたいのであれば
数値列を文字列に置換する関数num2strがありますので
s1=num2str(a1);
r=strrep(s1,'15','');
でr='44 25 22 45'
となりますので、数値列が欲しいのであれば
今度は逆の関数str2numを使って
a2=str2num(r);
でa2=[44,25,22,45];
となります。
ちなみに、数値列からある数値を除きたい(インデックス単位で)のであれば
文字列に直す必要はなく、
a1=[44,25,15,22,45];
a2=a1;
a2(a2==15)=[];

a2=[44,24,22,45];
となり、
a2の中から要素が値が15であるインデックスだけを消去できます。

以上、参考になれば幸いです。
    • good
    • 0
この回答へのお礼

a1=[44,25,15,22,45];
a2=a1;
a2(a2==15)=[];
の方法で、うまくできました。
丁寧に詳しく教えて頂きありがとうがざいました。

これでデータ集計するときにずいぶんと楽にできます。

お礼日時:2010/03/09 23:21

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!