如何把的字符串格式化成一个下面这样的二维数组

qfljm 2005-07-01 01:50:40


1,a1,b1,c1,d1|2,a2,b2,c2,d2|3,a3,b3,c3,d3
如何把上面的字符串格式化成一个下面这样的二维数组
arr( 1(a1,b1,c1,d1)
2(a2,b2,c2,d2)
3(a3,b3,c3,d3)
)
第一个字符为1维的无素,后面4个对应是1维里面的的第二维元素.
...全文
258 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
尚和空四 2006-03-13
  • 打赏
  • 举报
回复
动态二维数组
Dim result() As Long
Public Sub do_(a() As Long)
Debug.Print a(1, 1), a(200, 200)
End Sub

Private Sub Command1_Click()
Call do_(result)
End Sub

Private Sub Form_Load()
ReDim result(200, 200)
result(1, 1) = 1
result(200, 200) = 200
End Sub
Glaer 2005-07-04
  • 打赏
  • 举报
回复
<%
'如果使用了 Preserve 关键字,就只能调整数组最后维的大小,并且不能改变数组的维数。
'你犯了一个常识性错误:)
'如果需要使用动态数组,则可以通过得到数组最大值来预先定义
'示例程序如下:
Dim i,arr(),arr1,arr2,str1,max1,max2
str1="1,a1,b1,c1,d1|2,a2,b2,c2,d2|3,a3,b3,c3,d3"
arr1=split(str1,"|")

for i = 0 to Ubound(arr1)
arr2=split(arr1(i),",")
if max1 < arr2(0) then max1=arr2(0)
if max2 < Ubound(arr2) then max2=Ubound(arr2)
next

Redim arr(max1,max2)

for i = 0 to Ubound(arr1)
arr2=split(arr1(i),",")
'装载
for j=1 to Ubound(arr2)
arr(arr2(0),j-1)=arr2(j)
Next
Next

for i= 1 to 3
for j = 0 to 3
Response.write("arr("&i&","&j&")="&arr(i,j)&"<br>")
next
next

%>
超级大笨狼 2005-07-04
  • 打赏
  • 举报
回复
arr( 1(a1,b1,c1,d1)
2(a2,b2,c2,d2)
3(a3,b3,c3,d3)
)
是什么意思?
qfljm 2005-07-03
  • 打赏
  • 举报
回复
Glaer(光蓝)

下面是我写的.但是有错..望HELP

<script language="vbscript">
dim str, arr(), arr1, arr2
str = "1,a1,b1,c1,d1|2,a2,b2,c2,d2|5,a3,b3,c3,d3|8,a4,b4,c4,d4"
arr1 = split(str, "|")
For i=0 To UBound(arr1)
arr2 = split(arr1(i), ",")
Redim preserve arr(i)
arr(i) = arr2(0) '先为第一维付值

For j=1 To UBound(arr2)
Redim preserve arr(i, j-1)
arr(i, j-1) = arr2(j) '在对应第一维为第二维付值
Next

next
msgbox arr(1,0)
</script>
qfljm 2005-07-03
  • 打赏
  • 举报
回复
arr(10,10)
你这是定死的..但实际情况这个数组的是动态的
fatcat_xp 2005-07-01
  • 打赏
  • 举报
回复
to qfljm(野猪) ( ) 楼上的代码固然可以当时前面几位提到了 用 split() 函数你至少应该去查查其用法 .. 应该就有头绪了。
Glaer 2005-07-01
  • 打赏
  • 举报
回复
<%
Dim i,arr(10,10),arr1,arr2,str1
str1="1,a1,b1,c1,d1|2,a2,b2,c2,d2|3,a3,b3,c3,d3"
arr1=split(str1,"|")
for i = 0 to Ubound(arr1)
arr2=split(arr1(i),",")
'装载
for j=1 to Ubound(arr2)
arr(arr2(0),j-1)=arr2(j)
Next
Next

for i= 1 to 3
for j = 0 to 3
Response.write("arr("&i&","&j&")="&arr(i,j)&"<br>")
next
next
%>
qfljm 2005-07-01
  • 打赏
  • 举报
回复
HELP
qfljm 2005-07-01
  • 打赏
  • 举报
回复
晕,能有点建设性的意见吗?......
如果我会的话就不会在这问了...
xiaosaye 2005-07-01
  • 打赏
  • 举报
回复
array()
wesheng 2005-07-01
  • 打赏
  • 举报
回复
split()

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧