string 大小写转换

【1.用C语言标准库函数toupper,tolower】
 头文件:cctype   c下面:ctype.h
 转大写
 Ansi版: int toupper(int c);</a>
 Unicode版:int towupper(wint_t c);
 MSDN: toupper, _toupper, towupper, _toupper_l, _towupper_l

 转小写:
 int tolower(
    int c 
 );

 int towlower(
    wint_t c 
 );

 MSDN:tolower

 缺陷:只能转换单个字符

 Example:

      WCHAR wch = 'a';
       wch = towupper(wch); // A

 【2.用C++语言标准库函数_strlwr_s, _strupr_s】
 注意:要使用安全的字符串函数,不要用_strlwr。
 头文件:string.h
 转小写:
 Ansi:
 errno_t _strlwr_s(
    char *str,
    size_t numberOfElements
 );

 Unicode:
 errno_t _wcslwr_s(
    wchar_t *str,
    size_t numberOfElements
 );

 注意:numberOfElements 要加上最后NULL字符长度,即numberOfElements = strlen(str) + 1;

 转大写:
 errno_t _strupr_s(
    char *str,
    size_t numberOfElements
 );

 errno_t _wcsupr_s(
    wchar_t * str,
    size_t numberOfElements
 );


 Example:

     WCHAR wideStr[] = L"Abc";
     _wcslwr_s(wideStr, wcslen(wideStr) + 1); // abc
    _wcsupr_s(wideStr, wcslen(wideStr) + 1);// ABC

 【3.std::string 转换大小写】
 很遗憾,std::string 没有提供大小写转换的功能,所以只能用STL中的transform结合toupper/tolower完

成。
 头文件: string, cctype,algorithm
 转小写
  transform(str.begin(),str.end(),str.begin(),tolower);
 transform(wstr.begin(), wstr.end(), wstr.begin(), towlower);
 转大写
 transform(s.begin(), s.end(), s.begin(), toupper);
 transform(wstr.begin(), wstr.end(), wstr.begin(), towupper);

 Example:
     wstring wstr =L"Abc";
     transform(wstr.begin(), wstr.end(), wstr.begin(), towupper);

 【4.boost库中string_algorithm 提供了大小写转换函数to_lower 和 to_upper】

 Example:
 #include <boost/algorithm/string.hpp>    
 using namespace std;    
 using namespace boost;

 wstring wstr =L"Abc";
 boost::to_lower(wstr); // abc

 


在 Python 中,可以通过多种方法对字符串中的字母进行大小写转换。以下是几种常用的字符串大小写转换方法: 1. **将字符串中的所有字母换为大写** 使用 `upper()` 方法可以将字符串中的所有小写字母换为大写,对于非字母字符则保持不变。 ```python print('justtotestit'.upper()) # 输出:JUSTTOTESTIT ``` 2. **将字符串中的所有字母换为小写** 使用 `lower()` 方法可以将字符串中的所有大写字母换为小写,非字母字符保持不变。 ```python print('JUSTTOTESTIT'.lower()) # 输出:justtotestit ``` 3. **将字符串的首字母大写,其余字母小写** 使用 `capitalize()` 方法可以将字符串的首字母换为大写,其余字母换为小写。 ```python print('JUSTTOTESTIT'.capitalize()) # 输出:Justtotestit ``` 4. **将字符串中每个单词的首字母大写,其余字母小写** 使用 `title()` 方法可以将字符串中每个单词的首字母换为大写,其余字母换为小写。 ```python print('JUSTTOTESTIT'.title()) # 输出:JustTotestIt ``` 5. **将字符串中的大小写互换** 使用 `swapcase()` 方法可以将字符串中的大写字母换为小写小写字母换为大写。 ```python con = 'that century, strolledmassifs、riversandBuddhistmonasteries, notforTaoism, butmeetingwithyouonpassage.' print(con.swapcase()) # 输出:THAT CENTURY, STROLLEDMASSIFS、RIVERSANDBUDDHISTMONASTERIES, NOTFORtaoism, BUTMEETINGWITHYOUONPASSAGE. ``` 6. **判断字符串是否全为大写小写** 可以使用 `isupper()` 和 `islower()` 方法来判断字符串是否全为大写或全为小写。 ```python print('JUSTTOTESTIT'.isupper()) # 输出:True print('JUSTTOTESTIT'.islower()) # 输出:False ``` ### 相关问题 1. 如何在 Python 中判断字符串是否为标题格式? 2. `swapcase()` 方法是否会影响字符串中的非字母字符? 3. 除了 `upper()` 和 `lower()`,还有哪些方法可以实现字符串大小写转换? 4. 在字符串处理中,如何高效地将字符串中每个字母的大小写? 5. 如果字符串中包含特殊字符,使用大小写转换方法时会如何处理?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值