首页 > 解决方案 > 拆分逗号时,如何忽略引号中的逗号?

问题描述

我正在尝试创建应用程序的 .txt 存储。应用程序以“时间月,日期”的形式记录日期数据本身是单词,如何拼写,“时间”(如上图)

如何在不拆分引号中的时间逗号的情况下拆分数据?

这是代码的基本轮廓

>>file.read(filepath, r, encoding='utf-8')
>>file.split(',')```

数据样本:

word,word,"1:03 on March 20,2020"

有人有什么想法吗???谢谢!!!

标签: pythonpython-3.x

解决方案


您可以将正则表达式与re.findall

pattern = '(?:".*?"|[^,])+'

第一部分".*?"确保括号内的逗号被跳过。由于整个组是重复的 ( +),它会消耗到下一个逗号。例如:

>>> re.findall(pattern, 'foo, "1, 2"abc, bar')
['foo', ' "1, 2"abc', ' bar']

推荐阅读