vb6如何獲取某個字母開頭的所有漢字

時間 2022-01-05 01:40:04

1樓:網海1書生

改成這樣即可:

for x = -19218 to -18711

k = x and &hff

if k >= &h40 and k <> &h7f and k <> &hff then

text1.text = text1.text & vbcrlf & chr(x)

end if

next

漢字的gbk字符集中的內碼是有範圍限制的,其中高位是從&h81到&hfe,低位是從&h40到&h7e以及&h80到&hfe,所以並不是隨便說出一個整數都有一個對應的漢字,必須符合上述的規則才行。

補充:gb2312字符集的內碼範圍則是:高位&ha1到&hf7,低位&ha1到&hfe

由於只有gb2312的字元才是按拼音排列的,所以你的**最好改為:

for x = -19218 to -18711

k = x and &hff

if k > &ha0 and k < &hff then

text1.text = text1.text & vbcrlf & chr(x)

end if

next

如果想獲得所有拼音首字母相同的漢字,你就必須自己做個資料庫了

2樓:

gb 2312標準共收錄6763個漢字,一級漢字從16區起始,漢字區的「高位位元組」的範圍是0xb0-0xf7,「低位位元組」的範圍是0xa1-0xfe,佔用的碼位是 72*94=6768。其中有5個空位是d7fa-d7fe。

參考

所以你使用這樣的範圍方式輸出肯定會產生很多不在gb標準之內編碼,起碼對於低位位元組就包含了很多不在0xa1-0xfe之間的編碼值,這肯定會產生問號的.

另外,這6763個漢字之外的漢字(比如gbk擴充套件部分),內碼可不是按照拼音順序排列的,這種方式取拼音字母和產生漢字僅限於gb2312.

在vb6中怎麼取得一個漢字字元的編碼?

3樓:藍色星雪

vb內部採用unicode,必須轉換。

dim b() as byte

b = strconv("你", vbfromunicode)'轉換為本地機器編碼,gb2312/gbkdebug.print hex(ccur(b(0)) * 256 + b(1))

但是這樣得出的結果是"c4e3",你所說的"4f60"並不是gbk/gb2312碼,而是unicode碼,用以下程式得到:

debug.print hex(ascw("你"))

4樓:匿名使用者

150分啊

沒有希望了

學習了msgbox hex(ascw("你")) =漢字字元的chinagbk編碼

msgbox asc("你")=漢字的asc碼,注意漢字的asc瑪都是負數

5樓:

vb內使用unicode,在轉換字串只需要把字串賦值給位元組陣列就可以了.但vb6函式不能指定編碼形式.不是unicode編碼,就是ascii編碼,使用strconv函式帶vbstrconv.

narrow引數返回的字串轉到位元組後就是ascii編碼的.要使用其他編碼的使用api.vb.

net可以使用system.text.encoding.

utf-8.getbytes()方法獲取十六進位制編碼

6樓:匿名使用者

print hex(ascw("你"))

vb 如何讀取字串中的指定字元

7樓:匿名使用者

vb6.0使用mid 函式來讀取字串中指定數量的字元。

mid 函式:返回 variant (string),其中包含字串中指定數量的字元。

語法:mid 函式示例:

本示例使用 mid 語句來得到某個字串中的幾個字元。

dim mystring, firstword, lastword, midwords

mystring = "mid function demo"   建立一個字串。

firstword = mid(mystring, 1, 3)   ' 返回 "mid"。

lastword = mid(mystring, 14, 4)   ' 返回 "demo"。

midwords = mid(mystring, 5)   ' 返回 "funcion demo"。

8樓:樓主跟我來搞基

private sub command1_click()s = "12-323-22"

s = s + "-"

j = 1

for i = 1 to len(s)

if mid(s, i, 1) = "-" thens1 = mid(s, j, i - j)j = i + 1

print s1

end if

next i

end sub

9樓:

用mid(str1,a,b)函式

str1為目標字串

a為起始位置

b為要取的字串的位數

例如dim s as string,sss as stringsss="abcdefg123"

s=mid(sss,3,4)

意思是從字串"abcdefg123"中的第3個字元開始往後提取4個字元,則

s="cdef"

從字串"413025198203120612"中提取"19820312"如下所示

ss="413025198203120612"

s=mid(ss,7,8)

10樓:匿名使用者

text1.text = mid("413025198203120612", 7, 8)

從第7位開始取數,從第7位開始往右一共取8位

11樓:匿名使用者

mid("413025198203120612",7,8)

vb6中怎樣判斷字串中是否包含某個字元

12樓:匿名使用者

函式的語法:

instr([start, ]string1, string2[, compare])

這個函式需要的的引數是起始位置、主體字串、要查詢的字串;compare是可選引數。指定字串比較。此compare引數是可以省略的,也可以是 0, 1或 2。

指定0(預設)做二進位制比較。指定1做不區分大小寫的文字比較。

例如:我們要查詢在字串「abcdef」中是否存在「j」並返回其位置,則使用下面的語句就可以實現:

pos=instr(1,"abcdef","j")

excel 如何提取 公式中的某個字母 數字或符號

萊昂納德 尤拉 left a1,find a1 1 用普通公式是無法做到的 用vba,a1 formula 或者插入定義 mid get.cell 6,a1 2,100 1,選中a2單元格 2,ctrl f3,彈出的視窗中名稱位置輸入aa,引用位置輸入 get.cell 6,a1 新增確定 3,在a...

ecel中如何找出單元格中某個字母

假定單元格是a1,某個字母為a 1 確定a1中是否存在字母a。公式 if isnumber find a a1 在a1中存在字母a 在a1中未發現字母a 2 若要統計字母a的數量。公式 if isnumber find a a1 在a1中存在個字母a 在a1中未發現字母a 3 若要查詢字母a 只有一...

c怎樣獲取string的某個字元最後一位的位置

春天的離開 報告指定的 unicode 字元或 string 在此例項中的最後一個匹配項的索引位置。名稱說明 string.lastindexof char 報告指定 unicode 字元在此例項中的最後一個匹配項的索引位置。string.lastindexof string 報告指定的 strin...