SQLの窓

2009年06月25日


"A,B,C" を配列に変換後 "A,B,C" につなぎなおす

一番簡単で有用な VBScript
VB系では、配列が () なのに注意です
str = "A,B,C"
aData = Split(str, ",")

result = ""

For I = 0 To Ubound(aData)
	If result <> "" Then
		result = result & ","
	End If
	result = result & aData(I)

Next

MsgBox( result )
Wscript.Echo result

しかし、VBScript は古めの言語なので、演算子として &= という
ものは使えません( VB.NET は OK )

ですから、以下のPHPはそのへんを忠実に書き換えていますが、
.= という書き方が可能です。
殆ど VBScript と同じですが、配列の数を取得するのに、PHPでは
直感的な count 関数を使用しているのに対して、VBScript では
配列の添え字の上限 を求める UBound 関数を使用します。
<?
$str = "A,B,C";

$aData = explode(",",$str);

$result = "";

for( $i = 0; $i < count($aData); $i++ ) {
	If ( $result != "" ) {
		$result = $result . ",";
	}
	$result = $result . $aData[$i];
}

print $result;

?>
さらに、VB.NET への移行は、VBScript より厳密になるので、
データの定義や型の明示が必要になります。

ここで注目なのは、Split メソッドの引数に文字列が使えてしまう事。
本来は、Char の配列でないといけないのですが、何故か動きます。
","c と同等なのかどうかは解りませんが、VBでの選択肢は結構多いのです
Public Class Form1

	Private Sub Button1_Click(ByVal sender As System.Object, _
	ByVal e As System.EventArgs) Handles Button1.Click

		Dim str As String = "A,B,C"
		Dim aData As String()

		aData = str.Split(",")

		Dim I As Integer
		Dim result As String = ""

		For I = 0 To aData.Length - 1
			If result <> "" Then
				result &= ","
			End If
			result &= aData(I)

		Next

		MessageBox.Show(result)

	End Sub
End Class

C# では、Split メソッドの本来の使い方を実装しています。
というか、これでないとコンパイルは通りませんし。
private void button1_Click(object sender, EventArgs e)
{

	string str = "A,B,C";
	string[] aData = null;

	String delimStr = ",";
	Char[] delimiter = delimStr.ToCharArray();

	aData = str.Split(delimiter);

	int I = 0;
	string result = "";

	for (I = 0; I <= aData.Length - 1; I++)	{
		if (!string.IsNullOrEmpty(result)) {
			result += ",";
		}

		result += aData[I];
	}

	MessageBox.Show(result); 

}

タグ:VBScript VB.NET PHP C#
posted by lightbox at 2009-06-25 17:09 | プログラミング・仕様等 | このブログの読者になる | 更新情報をチェックする
container 終わり



フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

CSS ドロップシャドウの参考デモ
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり