>我有以下字符串:
tweet = "Get $10 worth of AMAL!!\nThis campaign will be final AirDrop before official release!!\nhttps://form.run/@airdrop-exa0\n\nRT please!\n\n#amanpuri #AMAL\n#BTC #XRP #ETH \n#cryptocurrency \n#China #bitcoin \n#\xe3\x82\xa2\xe3\x83\x9e\xe3\x83\xb3\xe3\x83\x97\xe3\x83\xaa"
我需要把它改掉,但我坚持去掉字符串末尾的符号,也就是\n#\xe3\x82\xa2\xe3
,这些符号很可能是 unicode 符号、表情符号和新行符号\n
这是我的工作:
pat1 = r'@[A-Za-z0-9]+' # this is to remove any text with @ (links)
pat2 = r'https?://[A-Za-z0-9./]+' # this is to remove the urls
pat3 = r'[^a-zA-Z0-9$]' # to remove every other character except a-z & 0-9 & $
combined_pat2 = r'|'.join((r'|'.join((pat1, pat2)),pat3)) # combine pat1, pat2 and pat3 to pass it in the cleaning steps
我得到以下输出:
get $10 worth of amal nthis campaign will be final airdrop before official release n e n nrt please n n amanpuri amal n btc xrp eth n cryptocurrency n china bitcoin n xe3 x82 xa2 xe3 x83 x9e xe3 x83 xb3 xe3 x83 x97 xe3 x83 xaa
所以我仍然有所有这些n和xe3 有人可以为此目的建议一个 python 正则表达式吗?提前感谢。
这些不是字符。他们是逃跑。您可以使用此正则表达式匹配它们:
r'\(n|x..)'
如果要删除它们,请使用:
import re
tweet = re.sub(r'\(n|x..)', '', tweet)