[leetcode]831. 隐藏个人信息

[leetcode]831. 隐藏个人信息_第1张图片
[leetcode]831. 隐藏个人信息_第2张图片
[leetcode]831. 隐藏个人信息_第3张图片
[leetcode]831. 隐藏个人信息_第4张图片
坑还很多。。
[leetcode]831. 隐藏个人信息_第5张图片

class Solution {
public:
    string maskPII(string S) {
       if(S.size() == 0) return "";
       string res="";
       size_t index = S.find("@"); 
       if(index != string::npos)
       {
           res += S[0];
           res += "*****";
           res += S[index-1];
           res += S.substr(index);
           transform(res.begin(),res.end(),res.begin(),::tolower);
       }
       else   // phone
       {
           string temp;
           for(int i = 0; i < S.size(); i++)
           {
               if(S[i] >= '0' && S[i] <= '9')  
               {
                   temp += S[i];
               }
           }
           res = "***-***-" + temp.substr(temp.size()-4);
           if(temp.size() > 10)
           {
                string t = "+";
                for(int i = 0; i < temp.size()-10; i++)
                {
                    t += "*";
                }
                t += "-";
                res = t + res;
           }
       }
       return res;
    }
};

你可能感兴趣的:(leetcode)