我想搜索&替換電子郵件列表並審查他們的最後4個字母。 我應該使用哪種正則表達式?審查員最後4個字母的電子郵件
如: FROM [email protected] [email protected]
TO [email protected] [email protected]
我想搜索&替換電子郵件列表並審查他們的最後4個字母。 我應該使用哪種正則表達式?審查員最後4個字母的電子郵件
如: FROM [email protected] [email protected]
TO [email protected] [email protected]
我只注意到您使用的崇高文本。您可以輕鬆地做到:
(.*)(....)(@.*)
$1xxxx$3
注:僅更換有至少4個字符的電子郵件,並讓別人不變。
在C++11
,你可以使用:
if (s.substr(0, s.find('@')).size() >= 4) // only handle email with >= 4 chars
{
const regex r("(.*)(....)(@.*)");
const string fmt("$1xxxx$3");
string res = regex_replace(s, r, fmt);
}
要小心!如果電子郵件的第一部分短於4個字符(它發生!)它將完全可見 –
@OlivierDulac感謝您指出這一點。更新了提到這個的答案。 – herohuyongtao
在Java
正則表達式是[\w.!#$%&'*+=?^{}|~\/-]{4}([email protected])
電子郵件接受字符作爲每http://en.wikipedia.org/wiki/Email_address
入住這裏演示
CODE:
String test = "[email protected]";
test = test.replace("[\\w.!#$%&'*+=?^`{}|~\\/-]{4}([email protected])","xxxx");
System.out.println(test)
當電子郵件少於4個字符,沒有替換髮生
什麼WIL l電子郵件少於4個字符時的輸出'例如:abc @ hotmail.com' –