国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
vb 字符串每隔一定長度,插入 換行符 ,有漢字長度的處理?
一組字符串,字符串長度不確定,要求每隔8個字符串,插入一個換行符,

"1234567890"轉(zhuǎn)換后為
"12345678
90".
另外還要求漢字長度處理,一個漢字按兩個字符處理,即
"一二三四五六七八九十"轉(zhuǎn)換后為
"一二三四
五六七八
九十".
特別難的是:字符串中有數(shù)字,英文和漢字同時出現(xiàn),而且數(shù)字和英文是單數(shù),如"123456a字bcd".

滿意答案

*******************************

字符串中有數(shù)字,英文和漢字同時出現(xiàn) 那你就判斷啊 數(shù)字,英文一個字符 漢字兩個字符

從0開始逐一的加 如大于8(7直接跳到9,那就看你該如何處理了)

重點在于你要如何判斷每個字符是否為漢字, 這才是你問題之所在

********************************

Private Sub Command2_Click()

Dim a As String, b As String, s As String, n As Long, i As Long

a = "特別11難的是12:字符45串gfg中f有數(shù)字,英文和nbnb漢字同時出x1c113s8778787xc現(xiàn),而且eee數(shù)字和英文是ddd單數(shù),如123456a字bcd"

For i = 1 To Len(a)

 b = Mid(a, i, 1)

 If Asc(b) < 0 Then

 If n >= 7 Then

 s = s & vbCrLf

 n = 2

 Else

 n = n + 2

 End If

 Else

 If n = 8 Then

 s = s & vbCrLf

 n = 1

 Else

 n = n + 1

 End If

 End If

 s = s & b

Next

MsgBox s

End Sub

Private Sub Form_Load()

Dim s, ss, s1, s2, s3

s1 = "1234567890995316770"

l1 = Int(Len(s1) / 8)

If l1 < 1 Then

MsgBox "長度小于8"

Else

For i = 0 To l1 - 1

s = s & Mid(s1, i * 8 + 1, 8) & vbCrLf

Next

End If

s = s & Right(s1, Len(s1) - l1 * 8)

MsgBox s

s2 = "一二三四五六七八九十"

l2 = Int(Len(s2) / 4)

If l2 < 1 Then

MsgBox "長度小于4"

Else

For i = 0 To l2 - 1

ss = ss & Mid(s2, i * 4 + 1, 4) & vbCrLf

Next

End If

ss = ss & Right(s2, Len(s2) - l2 * 4)

MsgBox ss

End Sub

Function GetCharLen(pChar() As Byte) As Long

    GetCharLen = 1 - (pChar(1) <> 0)

End Function

Private Sub Command1_Click()

    Dim myStr As String

    Dim Length As Long

    Dim arrStr() As String

    Dim tmpLen As Long

    Dim tmpBit As Long

    Dim Idx As Long

    Dim i As Long

    myStr = "特別11難的是12:字符45串gfg中f有數(shù)字,英文和nbnb漢字同時出x1c113s8778787xc現(xiàn),而且eee數(shù)字和英文是ddd單數(shù),如123456a字bcd"

    Length = Len(myStr)

    ReDim arrStr(Length * 2)

    For i = 1 To Length

        tmpBit = i

        tmpLen = 0

        Do

            tmpLen = tmpLen + GetCharLen(Mid(myStr, i, 1))

            i = i + 1

        Loop Until tmpLen >= 8 Or i > Length

        If tmpLen > 8 Then i = i - 1

        arrStr(Idx) = Mid(myStr, tmpBit, i - tmpBit)

        Idx = Idx + 1

        i = i - 1

    Next i

    ReDim Preserve arrStr(Idx - 1)

    MsgBox Join(arrStr, vbCrLf)

End Sub

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
VB 獲取字符串的字節(jié)長度
EXCEL VBA 正則表達式
VB編程語言基礎(chǔ)知識點總結(jié)
16個Excel文本函數(shù),這篇文章教你全弄清楚!
利用INPUTBOX函數(shù)實現(xiàn)人機對話
dim,msgbox
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服