替换字符串中的不间断空格 \xa0
Replace non breaking spaces \xa0 inside string
我正在 Python 中编写脚本以将 Excel 在线数据传输到 GCP,我想替换 \xa0 来自 DataFrame 列内的字符串,例如 '\xa0shopName' , '\xa0Street Adress', '\xa0'.
我试过 df = df.replace(u'\xa0', u'')
,但它只是替换了 '\xa0',字符串与 \xa0 和单词保持不变。也许正则表达式 df = re.sub('#regular expression', '', df)
会有所帮助,但我找不到正确的正则表达式句子 :/
如果它显示在字符串的开头或结尾,您可以只使用 .strip
删除该章程
>>> a='\xa0Street Adress'
>>> a[0]
'\xa0'
>>> a.strip()
'Street Adress'
我相信您 运行 对事物的呈现方式和表现方式存在疑问。十六进制 a0 是十进制的 160,在字符串中表示为 \xa0
。您有字符串文字 \xa0
还是 显示 您 \xa0
的演示文稿?如果是前者,您需要转义反斜杠(在这里,我使用原始字符串代替):
df.replace(r"\xa0", "")
如果是后者,您现有的代码应该有效:
df.replace("\xa0", "")
您可以使用
df = df.replace('\xa0', '', regex=True)
通过传递 regex=True
选项,您会在幕后触发 re.sub
,用空字符串替换所有出现的 non-breaking 空格。
我正在 Python 中编写脚本以将 Excel 在线数据传输到 GCP,我想替换 \xa0 来自 DataFrame 列内的字符串,例如 '\xa0shopName' , '\xa0Street Adress', '\xa0'.
我试过 df = df.replace(u'\xa0', u'')
,但它只是替换了 '\xa0',字符串与 \xa0 和单词保持不变。也许正则表达式 df = re.sub('#regular expression', '', df)
会有所帮助,但我找不到正确的正则表达式句子 :/
如果它显示在字符串的开头或结尾,您可以只使用 .strip
删除该章程
>>> a='\xa0Street Adress'
>>> a[0]
'\xa0'
>>> a.strip()
'Street Adress'
我相信您 运行 对事物的呈现方式和表现方式存在疑问。十六进制 a0 是十进制的 160,在字符串中表示为 \xa0
。您有字符串文字 \xa0
还是 显示 您 \xa0
的演示文稿?如果是前者,您需要转义反斜杠(在这里,我使用原始字符串代替):
df.replace(r"\xa0", "")
如果是后者,您现有的代码应该有效:
df.replace("\xa0", "")
您可以使用
df = df.replace('\xa0', '', regex=True)
通过传递 regex=True
选项,您会在幕后触发 re.sub
,用空字符串替换所有出现的 non-breaking 空格。