'這裡是設定的資料(略有改動)
xuesheng = "林川瑜 04財(2)班 川俊青74-63 全年.川倩倩 91,89" & vbcrlf & _
"川文歡 86,81,69 川復興68 78 盧川燕 90,92, 王川倩" & vbcrlf & _
"72,85" & vbcrlf & _
"英(1)班 川煜炯 88,96川凱捷 男" & vbcrlf & _
"朱川鈞 86 川憲珍 84,80, 李川翔 85 川清 82 李川友 79 川" & vbcrlf & _
"昌 82 韓芝川雲 84" & vbcrlf & _
"王川 86 劉川玫 82 川萍 81 付川 78 川永新 85,90 戚川慶" & vbcrlf & _
"70,80 蔣川 89" & vbcrlf & _
"川紅川 85 期中 川錚 85 張川元 84 姚川 87 王川 86,78" & vbcrlf & _
"川力 83 王立建 79 川宇 85 龔川娟 86 王川立 78 川巖 72 牛" & vbcrlf & _
"川慧 89 82"
text1.text = xuesheng
採用了以下方法:
1、替換其中的換行符和英文逗號
cj = text1.text
cj = replace(cj, vbcrlf, " ")
cj = replace(cj, ",", " ")
2、部分關鍵字過濾
text2.text = "04財(2)班,全年,英(1)班,期中,,,-,., 男 "
if trim(text2.text) <> "" then
dim tihuan_array() as string
tihuan_array = split(text2.text, ",")
for i = 0 to ubound(tihuan_array)
cj = replace(cj, tihuan_array(i), " ")
next
end if
3、'替換2個空格為1個
cj = replace(cj, ",", "")
do while instr(cj, " ")
cj = replace(cj, " ", " ")
loop
4、開始轉換
dim xmcj_array() as string
xmcj_array = split(cj, " ")
dim xmcj_sub as string
xmcj_sub = ""
for i = 0 to ubound(xmcj_array)
if isnumeric(xmcj_array(i)) then '如果是數字
xmcj_sub = xmcj_sub & " " & xmcj_array(i)
if i = ubound(xmcj_array) then
list1.additem xiuzheng(xmcj_sub) '修正並顯示資料
end if
else
if len(xmcj_sub) > 1 then
list1.additem xiuzheng(xmcj_sub) '修正並顯示資料
xmcj_sub = xmcj_array(i)
else
xmcj_sub = xmcj_sub & xmcj_array(i)
end if
end if
next
end sub
5、修正姓名長度,使分數對齊
private function xiuzheng(xmcj1 as string) as string
dim k as integer
dim tmpa() as string
tmpa = split(xmcj1, " ")
xiuzheng = ""
for k = 0 to ubound(tmpa)
if k = 0 then
xiuzheng = xiuzheng2(tmpa(0))
if len(xiuzheng) = 2 then xiuzheng = xiuzheng & " " '不需要修正就刪除
else
xiuzheng = xiuzheng & " " & tmpa(k)
end if
next
end function
6、修正姓名連線分數的情況
private function xiuzheng2(byval xmcj2 as string) as string
dim l as integer
dim xm as string, cj as string
xm = "": cj = ""
for l = 1 to len(xmcj2)
if asc(mid(xmcj2, l, 1)) < 0 then
xm = xm & mid(xmcj2, l, 1)
else
cj = cj & mid(xmcj2, l, 1)
end if
next
if len(cj) > 0 then xiuzheng2 = xm & " " & cj else xiuzheng2 = xm
end function
完工,也許還有更好的方法!
php判斷學生姓名,php 按學生姓名獲取列名
你可以這樣做 select group concat coalesce case when maths then maths end,coalesce case when science then science end,coalesce case when art then art end,coa...
根據姓名查詢學生的學號
完成日期 2013年12月10 版本號 v1.0 問題描述 根據姓名查詢學生的學號 樣例輸入 無 樣例輸出 無 問題分析 用簡單的方法,學會活學活用 include includeusing namespace std void jiaohuan int p1,int p2 string name ...
輸出最高分數的學生姓名
描述 輸入學生的人數,然後再輸入每位學生的分數和姓名,求獲得最高分數的學生的姓名。輸入第一行輸入一個正整數n n 100 表示學生人數。接著輸入n行,每行格式如下 分數 姓名 分數是一個非負整數,且小於等於100 姓名為一個連續的字串,中間沒有空格,長度不超過20。資料保證最高分只有一位同學。輸出 ...
1147 最高分數的學生姓名
輸入學生的人數,然後再輸入每位學生的分數和姓名,求獲得最高分數的學生的姓名。第一行輸入一個正整數n n 100 表示學生人數。接著輸入n行,每行格式如下 分數 姓名 分數是一個非負整數,且小於等於100 姓名為一個連續的字串,中間沒有空格,長度不超過20。資料保證最高分只有一位同學。獲得最高分數同學...
求出選修了所有課程的學生姓名
求出選修了所有課程的學生姓名 學生表 s sno int pk,sn varchar 8 sno為學號 sn為學生姓名。課程表 c cno int pk,cn varchar 50 cno為課程號,cn為課程名 選修表 sc sno int pk,cno int pk,score number 7,...