from docx import Document
numbers = []
doc = Document('word.docx')
for para in doc.paragraphs:
new_text = para.text
for char in new_text:
if char in '0123456789.':
numbers.append(char)
print(new_text)
print(numbers)
字符串
- 它是波斯语docx文件
它返回如下:
2.7 ت ا 3 م ت ر و ن ن ب ي 306 م ر س د。مه م ت ر ب ن م ه ا ل ن ا ن و ر,ه ا ل عم و د ب ت ر ب ي ر و ب ي ر م-ن ا ر ن ن ا س س ت ه د ر ن اح ب ي ت ا ل ع ر ب ي ت ر ب ي ن ا س ت。ای ن جا ن و ر د ا ر ا ی ب د ن ی عضلا ن ی و پاها ی ی ب س ی ا ر ن ی ر ومن د ا ست. ordered د ن ب ر د ا ر ا ordered م و ه ا ordered بلن د و ب ر ا س ب ر ن,ه م ر ا ه ب ا ه ا orderstudent ا ه عم و د م ب ا ل د. جثّه ٔ ب ب ر ه ا ی ن ر ب ز ر گ ت ر ا ز ب ب ر ه ا ی م ا د ه است و ه مچن ی ن م و ه ا ی ر و ی گ و ن ه ٔ ب ب ر ن ر بلن د ت ر ا ز ب ب ر م ا د ه م ی ب اشد. دن د ا نها ی ب ب ر ب س ی ا ر قو ی ا س ت و د ر می ا ن جا ن و ر ا ن خشکی بلن د ت ر ی ن ا س ت. 74.5%的人认为这是一个错误。10تا15 سا ل ع م ر م ن د。26 student ا ل ا ر ح د ا ل عمر ب ي ت ح د و د ر ب ا ل ع ر ب ي و ح ا 26 student ا ل ا ر ح د ه ا س ت。
['2','.',' 7','3',' 3','0',' 6','.',' 7','4','.','5',' 9','0','.','1',' 0','1',' 5','.',' 2','6','.']
正如你所看到的,它还向列表中添加了文本的句点。
2条答案
按热度按时间eqoofvh91#
当然,它会捕获所有句点,因为您允许它们出现在字符列表中。然而,要识别数字,你不能只检查单个字符,而是要检查一组字符。你可以通过使用regular expressions来实现:
字符串
(That这只是一个例子,实际上您需要找到一个与您的用例相匹配的模式,并且应该在使用
re.compile
之前编译它。)然后你只需要转换结果:
型
rslzwgfq2#
字符串