Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python不识别空白字符_Python_Regex - Fatal编程技术网

Python不识别空白字符

Python不识别空白字符,python,regex,Python,Regex,我对这个问题已经束手无策了:基本上,我需要消除单词之间的两个空格。我的程序恰巧是用希伯来语编写的,但这是基本思想: TITLE: הלכות ‏ ‏השכמת‏ ‏הבוקר‏ 请注意,前两个单词之间有一个额外的空格(Herbew从右向左阅读) 我尝试了很多很多不同的方法,这里有一些: # tried all these with and without unicode title = re.sub(u'\s+',u' ',title.decode('utf-8')) title = titl

我对这个问题已经束手无策了:基本上,我需要消除单词之间的两个空格。我的程序恰巧是用希伯来语编写的,但这是基本思想:

TITLE: הלכות ‏ ‏השכמת‏ ‏הבוקר‏
请注意,前两个单词之间有一个额外的空格(Herbew从右向左阅读)

我尝试了很多很多不同的方法,这里有一些:

# tried all these with and without unicode
title = re.sub(u'\s+',u' ',title.decode('utf-8'))
title = title.replace("  "," ")
title = title.replace(u"  הלכות",u" הלכות")
直到最后,我求助于制作一个非常不必要的方法(粘贴时一些格式被弄乱了):

让我大吃一惊的是,这就是我得到的回报:

word: הלכות
^NOT BLANK^
word: ‏           #this should be tagged as Blank!!
^NOT BLANK^
word: ‏השכמת‏
^NOT BLANK^
word: ‏הבוקר‏
^NOT BLANK^

很明显,我的资格赛不起作用。这里发生了什么?

有一个隐藏的\xe2\x80\x8e,从左到右的标记。使用repr(word)找到它。谢谢@mgilson

如果打印单词的
repr
,会发生什么情况<代码>打印“word:”,报告(word)?您可能有一个unicode空格,例如,空格之间至少有一个不可见字符。我不知道那个字符是什么,但正是它引起了你的困惑。如果粘贴的内容可信,你就可以在你的一些空格之间坐下来。@mgilson谢谢你的提示。我尝试了RPR(Word),对于空白空间,我得到了这个值:\xE2\x80\x8f。它实际上在每个字符串的开头。查找它:\xe2\x80\x8e,从左到右标记
word: הלכות
^NOT BLANK^
word: ‏           #this should be tagged as Blank!!
^NOT BLANK^
word: ‏השכמת‏
^NOT BLANK^
word: ‏הבוקר‏
^NOT BLANK^