【问题标题】:Python string split returns weird characters [duplicate]Python字符串拆分返回奇怪的字符[重复]
【发布时间】:2018-04-25 10:10:54
【问题描述】:
string = '''In your opinion, will BCH/USD trade above 1500 USD (+9.65%) at anу timе bеfore Арril 28?
Indicаtоr: 60.76%'''

splited = string.split()
print(splited)

# Using Regex
import re 

res = re.findall(r"\w+ \d+\?", string)
print(res)

我想从这个字符串中获取日期 4 月 28 日。如果我拆分字符串,它会产生这样的输出

an\xd1\x83', 'tim\xd0\xb5', 'b\xd0\xb5fore', '\xd0\x90\xd1\x80ril', '28?

如果我使用正则表达式,它只会返回

ril 28

如何获取日期或转换字符串,使其像普通字符串一样?

Demo

【问题讨论】:

  • 有点逆天,因为副本实际上是原始(现已关闭/删除)问题的副本。请参阅副本中的第一条评论。奇怪的世界。

标签: python python-3.x


【解决方案1】:

奇怪的字符不是拉丁字符。

例如,单词“any”中的Y实际上是西里尔字母小写У,而单词“Арril”包含西里尔字母А和西里尔字母小写Р。

然而,这些字符在相当多的计算机字体中看起来与拉丁字符相同,而您只是被那些西里尔字符弄糊涂了。

【讨论】:

  • $ charinfo 'anу'U+0061 LATIN SMALL LETTER A [Ll]U+006E LATIN SMALL LETTER N [Ll]U+0443 CYRILLIC SMALL LETTER U [Ll]
猜你喜欢
  • 2014-08-11
  • 2021-02-17
  • 1970-01-01
  • 2019-11-20
  • 2014-02-28
  • 1970-01-01
  • 2015-09-12
  • 1970-01-01
  • 2019-11-14
相关资源
最近更新 更多