У меня есть скрипт python, который удаляет RT-ретвит из твита, # hash-тега. Теперь я хочу удалить имя пользователя, а именно твит, у которого есть @userxyz: ie @ symbol, за которым следует имя пользователя а затем: (двоеточие) .. Я просто хочу удалить таких пользователей: например, если твит «@bugun: MHP'li Kemallettin Yılmaz Bank Asya'ya yapılan intihardır http://t.co/AKxMgMuuSs @bugun http://t.co/fyJbr098tw}« Я хочу удалить @bugun: и получить результат, как «MHP'li Kemallettin Йылмаз Банк Asya'ya yapılan intihardır http://t.co/AKxMgMuuSs @bugun http://t.co/fyJbr098tw»Удалить пользователя из твита
Вот мой код для хэш и удаления RT от твит:
# coding:utf-8
import sys, re
x = open("test.txt", "r")
for line in x:
z = lambda line: re.compile('\#').sub('', re.compile('RT @').sub('@', line, count=1).strip())
print z(line)
saveFile = open("test_result.txt", "a")
saveFile.write(z(line))
saveFile.write("\n")
saveFile.close()
Не знаю твит часть, но если '@' гарантированно будет пользователь, простой, как регулярное выражение '@ [^:] + : 'все, что вам нужно. – sln
В вашем примере '^ @ \ w +:' Будет ловить только первое имя пользователя – Tico