我从正在抓取的电子邮件中得到了这个字符串:
TICKET\xa0\xa0 STATE\xa0\xa0\xa0\xa0 ACCOUNT IDENTIFIER\xa0\xa0\xa0 FILE DIRECTORY\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 CODE
我的目标如下:
这是我理想的结果:
TICKET,STATE,ACCOUNT IDENTIFIER,FILE DIRECTORY
另一方面,这就是我最终得到的:
#code
my_string.replace(' ', ',').replace('\xa0', '')
#result
TICKET,STATE,ACCOUNT,IDENTIFIER,FILE,DIRECTORY
我正在考虑使用正则表达式,但是我不知道如何实现逻辑。
分隔您关心的项目的相关字符串是
\xa0
,因此您可以先对其进行拆分,然后保留包含 \xa0
和空格以外的内容的元素:
my_string = "TICKET\xa0\xa0 STATE\xa0\xa0\xa0\xa0 ACCOUNT IDENTIFIER\xa0\xa0\xa0 FILE DIRECTORY\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0\xa0 CODE"
print(", ".join(x.strip() for x in my_string.split("\xa0") if x.strip()))
# Output: TICKET, STATE, ACCOUNT IDENTIFIER, FILE DIRECTORY, CODE