Python 替换单词的潜台词

Python 替换单词的潜台词,python,regex,Python,Regex,我想换这个字符串 ramesh@gmail.com 到 rxxxxh@gxxxl.com 这就是我到目前为止所做的 打印子标题“[A-Za-z].[A-Za-z]@”,“x”,i 一种方法是使用捕获组,在替换应替换为x的部件时,为匹配组中的字符数返回一个重复 对于第二组和第四组,请使用与列出的字符以外的任何字符匹配的否定字符类[^ \b([A-Za-z])([^@\s]*)([A-Za-z]@[A-Za-z])([^@\s.]*)([A-Za-z])\b | 比如说 import re i

我想换这个字符串 ramesh@gmail.com 到

rxxxxh@gxxxl.com

这就是我到目前为止所做的

打印子标题“[A-Za-z].[A-Za-z]@”,“x”,i

一种方法是使用捕获组,在替换应替换为x的部件时,为匹配组中的字符数返回一个重复

对于第二组和第四组,请使用与列出的字符以外的任何字符匹配的否定字符类[^

\b([A-Za-z])([^@\s]*)([A-Za-z]@[A-Za-z])([^@\s.]*)([A-Za-z])\b
|

比如说

import re

i = "ramesh@gmail.com"

res = re.sub(
    r'\b([A-Za-z])([^@\s]*)([A-Za-z]@[A-Za-z])([^@\s.]*)([A-Za-z])\b',
    lambda x:  x.group(1) + "x" * len(x.group(2)) + x.group(3) + "x" * len(x.group(4)) + x.group(5),
i)
print(res)
输出

rxxxxh@gxxxl.com