c++ - 如何检查字符串或字符是否有中文字符然后显示其他字符?
问题描述
我想检查每个单词的字符串或字符。如果有中文字符显示其他字符
#include <stdio.h>
int main()
{
char ch[] = "Hello, 您Hi好!";
string str1("Hello, 您Hi好!");
printf("%s\n",ch);
cout << "The string \"" << str1 << "\"'s size is " << str1.size() << endl;
//for ch find the chinese char
//if has chinese char show '|||'
//normal to print
//expect output:Hello, |||Hi|||!
return 0;
}
解决方案
#include <bits/stdc++.h>
int main()
{
char ch[] = "Hello, 您Hi好!";
char c;
for(int i = 0; i < strlen(ch); i++) {
c = ch[i];
if ((unsigned int)c >= 0x4E00u && (unsigned int)c <= ox9FFFu) {
printf("|||");
}
else printf("%c", c);
}
printf("\n");
return 0;
}
推荐阅读
- node.js - 不同端口上的多个代理,每个代理都有自己的基本身份验证
- python - 在 pandas 中使用 sumproduct 或 dot 函数
- html - 多列时表换行
- mysql - WHEN 条件在 JOIN 查询中如何工作?
- java - Java:如何将 Arrays.copyOfRange() 与泛型类型一起使用?
- c++ - 为什么 std::when_any 使用 std::tuple 而不是 std::vector 作为其结果类型?
- java - GetSharedPreferences get session id
- c# - 枚举模型绑定 [FromRoute] 的行为与 .net 核心中的 [FromBody] 不同
- javascript - 使用 node_modules 实现 Typed.js 时遇到问题
- php - session_start(); 警告?