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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
| #include <iostream> #include <string>
using namespace std;
string conversionString(string s) { string res; if (s.size() == 0) return 0; for (int i = 0 ; i < s.size() ; ++i) { if (s[i - 1] >= 'A' && s[i - 1] <= 'Z' && s[i] >= 'A' && s[i] <= 'Z' && s[i + 1] >= 'A' && s[i + 1] <= 'Z') { res.push_back(s[i] - 'A' + 'a'); } else if ((i == 0 || i == s.size() - 1) && s[i] >= 'A' && s[i] <= 'Z') { res.push_back(s[i] - 'A' + 'a'); } else if (s[i] >= 'A' && s[i] <= 'Z') { res.push_back('_'); res.push_back(s[i] - 'A' + 'a'); } else res.push_back(s[i]); } return res; }
void test1() { string s, res; s = "HTTP"; res = conversionString(s); cout << "输入:HTTP,输出:" << res << endl; }
void test2() { string s, res; s = "HTTPNameHTTP"; res = conversionString(s); cout << "输入:HTTPNameHTTP,输出:" << res << endl; }
void test3() { string s, res; s = "myFirstName"; res = conversionString(s); cout << "输入:myFirstName,输出:" << res << endl; }
void test4() { string s, res; s = "OnlineUsers"; res = conversionString(s); cout << "输入:OnlineUsers,输出:" << res << endl; }
void test5() { string s, res; s = "Address"; res = conversionString(s); cout << "输入:Address,输出:" << res << endl; }
void test6() { string s, res; s = "validHTTPRequest"; res = conversionString(s); cout << "输入:validHTTPRequest,输出:" << res << endl; }
int main(int argc, char *argv[]) { test1(); test2(); test3(); test4(); test5(); test6(); }
|