C++ 处理中文符号
英文符号替换为英文逗号
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
processPunctuation(string& tag) { std::set< char > punctuation_set; punctuation_set.insert( ' ' ); punctuation_set.insert( '\t' ); punctuation_set.insert( ';' ); for ( int i=0; i< tag.size(); i++) { if (punctuation_set.find(tag[i]) != punctuation_set.end()) { tag[i] = ',' ; } } return ; } |
中文逗号替换为英文逗号
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
processChinesePunctuation(string& tag) { string u8comma = u8 "," ; for ( int i = 0; i < tag.size() - u8comma.size() + 1; i++) { bool find = true ; // 查找空格依赖于 UTF-8 的特性 for ( int j = 0; j < u8comma.size(); j++) { if (tag[i + j] != u8comma[j]) { find = false ; break ; } } if (find) { // 替换为 , tag[i] = ',' ; auto it = tag.begin(); it += i + 1; for ( int j = 1; j < u8comma.size(); j++) it = tag.erase(it); } } return ; } |
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!