python - 无法分割看似编码的字符串

标签 python unicode encoding latin1

在解析网络请求中的数据时,我遇到了以下字符串 -

dateRange = 'September\xa04,\xa01978 – September 1980'

提取的字符串的编码似乎是Latin-1(基于\xa0)。我通过用空格替换代码来摆脱这个问题。

dateRange = dateRange.replace(u'\xa0', u' ')

抛开这一点,我无法在连字符 (-) 上拆分字符串。

当我按如下方式调用 split() 时:

print(dateRange.split('-'))

输出如下:

['September\xa04,\xa01978 – September 1980']

就好像字符串中没有连字符。 我感觉这与编码有关,但我似乎无法准确理解这个问题。

那么,如何解决这个问题呢?

编辑:

我已经尝试过以下方法,但没有成功:

dateRange.split('\-')

最佳答案

这不是 hyphen 。这是一个U+2013 ᴇɴ ᴅᴀsʜ .

只需将其复制并粘贴到您的拆分通话中即可:

dateRange.split('–')

或者,您可以将其替换为实际的连字符。确保将破折号复制并粘贴到替换调用中:)

关于python - 无法分割看似编码的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16104374/

相关文章:

python - 如何从股票推特下载数据?

android - HttpURLConnection 上的 URL 字符串

java - 使用 Unicode 字符进行 Lucene 搜索

python - FPDF __init__ 在Python中与页眉和页脚结合

python - 哪个 Python 2.7.x 版本包含问题 1625 的修复

python - 在pypi中重命名项目的推荐方法是什么?

mysql - UTF-8字符有问题;我看到的不是我存储的

Python:比较带有重音字符的字符串不起作用

java - 如何将 HTML 作为 GET 请求参数发送?

mysql - 如何在 MySQL 中更改 "Show Create Table"结果的编码?