示例字符串:
string = "cjavapy @jon c cjavapy @@here python @@@there value path some@thing go '@here"
1、使用正则表达式替换
替换为第一个捕获组,该捕获组是所有连续的@符号,去掉一个。
应该捕获@在每个单词的开头出现的所有单词,无论该单词出现在字符串的开头,中间还是结尾。
string = "cjavapy @jon c cjavapy @@here python @@@there value path some@thing go '@here"
out = re.sub(r"@(@*)", '\\1', string)
print(out)
输出:
"cjavapy jon c cjavapy @here python @@there value path something go 'here"
2、使用生成器表达式替换
result = ' '.join(s.replace('@', '', 1) for s in string.split(' '))
输出:
"cjavapy jon c cjavapy @here python @@there value path something go 'here"