C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: string[]への変換


(過去ログ 72 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■42020 / inTopicNo.1)  string[]への変換
  
□投稿者/ 本を読んで勉強中です (1回)-(2009/10/06(Tue) 18:00:46)

分類:[C#] 

//Xを全て格納
int i = 0;
string bbb;
string[] Xatai = new string[i];

while (i<count1)
{

Regex xsyutoku = new Regex(@"X(\d|.|-)+Y");


int xkari001=0;

do
{
Match x01=xsyutoku.Match(g355jyouhou1);

//抽出した位置
int x02 = x01.Index;

//抽出した長さ
int x03=x01.Length-1;
//bbbに検索結果を代入
bbb = g355jyouhou1.Substring(x02, x03);
//g355jyuhou1から取り出したXの値を削除

g355jyouhou1 = g355jyouhou1.Remove(x02, x03);

xkari001++;
}while(xkari001<1);

//文字列取得
Console.WriteLine(bbb);

//Xatai[0],Xatai[1],,,,と格納したい

//Xatai[i] = bbb;←ここができません

i++;
}


g355jyouhou1="G355X233.319Y46.664B42.833C11.31TG355X93.328Y116.66B25.269C51.34TG355X139.992Y279.983B63.435C63.435T
G355X0.Y256.651B47.167C90.TG355X-69.996Y46.664B13.908C146.31TG355X-209.987Y0.B36.87C180.TG355X-93.328Y-186.656B36.604C243.435T
G355X-23.332Y-69.996B12.17C251.565TG355X46.664Y-256.651B48.19C280.305TG355X209.987Y-116.66B43.344C330.945T"


上記を(g355jyouhou1)

Xatai[0]=X233.319
Xatai[1]=X93.328
Xatai[2]=X139.992
...

と格納したいのですが
//Xatai[i] = bbb;←ここができません
でstrin[]型に変換できません、なにかいい方法はないでしょうか?

お願いいたします。


引用返信 編集キー/
■42022 / inTopicNo.2)  Re[1]: string[]への変換
□投稿者/ ヴァン (9回)-(2009/10/06(Tue) 18:30:43)
こんにちは。

No42020 (本を読んで勉強中です さん) に返信
> //Xを全て格納
> int i = 0;
> string bbb;
> string[] Xatai = new string[i];

配列が0個だからじゃないのですか?

>strin[]型に変換できません

エラーでそういうメッセージが出てきますか?
引用返信 編集キー/
■42023 / inTopicNo.3)  Re[1]: string[]への変換
□投稿者/ もりお (96回)-(2009/10/06(Tue) 18:43:45)
No42020 (本を読んで勉強中です さん) に返信
コードの意図を把握しきれなかったのですが
string 型の変数 g355jyouhou1 から X233.319, X93.328 などを取得するとしますと
もっと簡潔に記述できそうです。

Regex クラス (System.Text.RegularExpressions)
http://msdn.microsoft.com/ja-jp/library/system.text.regularexpressions.regex(VS.95).aspx
引用返信 編集キー/
■42028 / inTopicNo.4)  Re[2]: string[]への変換
□投稿者/ 本を読んで勉強中です (2回)-(2009/10/06(Tue) 19:43:23)
>
> エラーでそういうメッセージが出てきますか?


エラーは

インデックスが配列の境界外です。

とでます。


引用返信 編集キー/
■42032 / inTopicNo.5)  Re[3]: string[]への変換
□投稿者/ ごう (58回)-(2009/10/06(Tue) 20:35:25)
No42028 (本を読んで勉強中です さん) に返信
>>
>>エラーでそういうメッセージが出てきますか?
>
>
> エラーは
>
> インデックスが配列の境界外です。
>
> とでます。
>
>

ぢゃ、ヴァンさんの言われるとおり
> //Xを全て格納
> int i = 0;
> string bbb;
> string[] Xatai = new string[i];

i=0なので、0個の配列ができてしまっているところにまず問題があります。
iには、「作りたい配列の個数」を入れなくてはいけません。
「作りたい配列の個数」は、あらかじめ多めに作っておいてもいいですし、
g355jyouhou1に含まれるデータをカウントして求めた数値を代入してもいいです。


引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -