wangrenjie1996
V2EX  ›  问与答

小白求教 VB 知识

  •  
  •   wangrenjie1996 · May 31, 2015 via iPhone · 3696 views
    This topic created in 4020 days ago, the information mentioned may be changed or developed.
    VB编程中如何将字符串AbcD转换为aBCd?
    12 replies    2015-05-31 18:07:51 +08:00
    cha1
        1
    cha1  
       May 31, 2015   ❤️ 1
    在Ascii码中,A是十进制的65,a是十进制的97,二者相差32。B(66)和b(98)也是一样的,相差32。

    最简单的办法,'A' = 'a' - 32 或 'a' = 'A' + 32。

    也可以使用位运算符,你看,字符'A'是十进制65,换成一个字节的二进制就是 0100 0001,而'a'是十进制的97,换成一个字节的二进制就是 0110 0001。认真比较一下 0100 0001 和 0110 0001,也就一个位不同。那么就可以使用或运算符, b0110 0001 = b0100 0001 | b0010 0000

    最后也可以使用VB的内置函数,查了一下
    Ucase("字符串")______将字符串中所有小写字母转换成大写,最终字符串全部是大写字母。

    Lcase("字符串")______将字符串中所有大写字母转换成小写,最终字符串全部是小写字母。
    Marfal
        2
    Marfal  
       May 31, 2015
    请左转百度VB吧
    cha1
        3
    cha1  
       May 31, 2015
    补充,其他编码也是类似的,找到规律后就可以了。

    注:
    UTF-8中,字符A是十六进制的0x0041,而字符a是十六进制的0x0061,同样相差32


    Ascii Table:
    http://www.asciitable.com/

    UTF-9 Table:
    http://www.utf8-chartable.de/
    wangrenjie1996
        4
    wangrenjie1996  
    OP
       May 31, 2015
    @zqhong 谢谢你!再帮忙看看这个问题吧。http://zhidao.baidu.com/question/1639536738837616460.html
    littlewey
        5
    littlewey  
       May 31, 2015
    @wangrenjie1996 关于 http://zhidao.baidu.com/question/1639536738837616460.html

    有了 zqhong 同学的 “在Ascii码中,A是十进制的65,a是十进制的97,二者相差32 这部分信息,只需要判断每一个character的大小范围就知道是大小写了。
    cha1
        6
    cha1  
       May 31, 2015
    @wangrenjie1996 下面的人说了。话说,这个怎么感觉类似于作业题,或者是 某些书后面的小题目什么的?
    wangrenjie1996
        7
    wangrenjie1996  
    OP
       May 31, 2015 via iPhone
    @zqhong 谢谢,我已经搞定了。确实是作业…
    chanssl
        8
    chanssl  
       May 31, 2015 via Android
    来这里求作业……😂
    kiritoalex
        9
    kiritoalex  
       May 31, 2015 via Android
    楼主你也真是机智……跑到这儿求作业答案
    VirgilMing
        10
    VirgilMing  
       May 31, 2015 via iPhone
    一九九六…大一?
    学会翻墙吧…
    OrangeM21
        11
    OrangeM21  
       May 31, 2015 via iPhone
    明显大一孩儿考VB。左转学校贴吧找学长教教你就完了。
    fhliwei
        12
    fhliwei  
       May 31, 2015 via Android
    大学还学VB?不是高中才学么?大学C语言这个都不懂期末肯定挂。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5627 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 61ms · UTC 07:38 · PVG 15:38 · LAX 00:38 · JFK 03:38
    ♥ Do have faith in what you're doing.