vb輸入一串字符統(tǒng)計(jì)某字母的個(gè)數(shù) vb中,如何判斷一個(gè)字符串是漢字還是英文?
vb中,如何判斷一個(gè)字符串是漢字還是英文?你可以用mid截取單個(gè)字符并用ASCII碼判斷:nasc(mid(str1,i,1))if n0 and n英文字母else中文end if整個(gè)字符串你可以循
vb中,如何判斷一個(gè)字符串是漢字還是英文?
你可以用mid截取單個(gè)字符并用ASCII碼判斷:
nasc(mid(str1,i,1))
if n0 and n
英文字母
else
中文
end if
整個(gè)字符串你可以循環(huán)判斷。
這是一個(gè)比較粗糙的范圍,更加精準(zhǔn)的判斷:33-126為可打印的(即可顯示的)英文字符,97-122為英文字母(小寫(xiě)),你可以根據(jù)字符串的實(shí)際內(nèi)容來(lái)采用判斷依據(jù);負(fù)數(shù)是漢字(其實(shí)是最高位為1,VB識(shí)別為負(fù)數(shù),轉(zhuǎn)換成16進(jìn)制就可以看到正確的編碼了)
請(qǐng)問(wèn)VB中怎樣判斷字符是不是小寫(xiě)字母或數(shù)字?
IfcAAndcZThen----c是大寫(xiě)字母
vb如何隨機(jī)輸出大小寫(xiě)字母?
代碼示例:
Private Sub Command1_Click()
Dim size As Integer
Dim ascii As Integer
Dim i As Integer
Dim s As String
Dim result As String
Randomize
ascii Int((90 - 65 1) * Rnd 65)
s Chr(ascii)
size Int((10 - 3 1) * Rnd 3)
result
excel中的vba如何才能正常打開(kāi)unicode編碼的文件進(jìn)行字符串對(duì)比?
工作中excel要求vba同時(shí)打開(kāi)好幾個(gè)文本文件,進(jìn)行字符串對(duì)比。以前的軟件是用ansi輸出到文本文件。軟件升級(jí)后,輸出的編碼是unicode,這個(gè)時(shí)候,vba讀取時(shí)有些字符串是。想問(wèn)如何更改vba才能正確讀取?
使用VBA內(nèi)置函數(shù)
StrConv 函數(shù):返回一個(gè)按照指定轉(zhuǎn)換的 Variant (String) 值。
語(yǔ)法: StrConv (字符串,換算, [ LCID ] )
其中:LocaleID可選,一般省略,如果與系統(tǒng)LocaleID不同,則為L(zhǎng)ocaleID(系統(tǒng)LocaleID為缺省值。)
轉(zhuǎn)換參數(shù)說(shuō)明:
vbUpperCase 值為1 將字符串文字轉(zhuǎn)成大寫(xiě)。
vbLowerCase 值為2 將字符串文字轉(zhuǎn)成小寫(xiě)。
vbProperCase 值為3 將字符串中每個(gè)字的開(kāi)頭字母轉(zhuǎn)成大寫(xiě)。
vbWide* 值為4* 將字符串中單字節(jié)字符轉(zhuǎn)成雙字節(jié)字符。
vbNarrow* 值為8* 將字符串中雙字節(jié)字符轉(zhuǎn)成單字節(jié)字符。
vbKatakana** 值為16** 將字符串中平假名字符轉(zhuǎn)成片假名字符。
vbHiragana** 值為32** 將字符串中片假名字符轉(zhuǎn)成平假名字符。
vbUnicode 值為64根據(jù)電腦系統(tǒng)的非默認(rèn)碼頁(yè)將數(shù)組元素轉(zhuǎn)成unicode字符集。(在os/2中不可用。)(iec轉(zhuǎn)utf-16)
vbFromUnicode值為128將字符串由字符集轉(zhuǎn)成操作系統(tǒng)的.默認(rèn)碼頁(yè)。(在os/2中不可用。)(unicode編碼轉(zhuǎn)iec)