【发布时间】:2021-09-06 21:21:25
【问题描述】:
我目前有一个 Twitter 用户的 csv 文件,我正在尝试将其转换为 python 数据框 该文件包含用户 ID、背景图片、个人简介以及有关用户配置文件的其他信息。我遇到的问题是我试图在生物描述中去掉逗号,因为这会干扰文件的逗号分隔并在数据框中创建额外的列。
文件中的所有字段都用括号括起来,每个子字段都用引号括起来。大多数时候这些是单引号,但生物描述有时有双引号。请参阅下面的此文件中的一行示例
(19435878, u'http://a3.xxx.com/profile_background_images.jpg', 1232785000000L, u'I have been researching a British Spies life for a few years. My site tells his story. His name's ffrench, Conrad ffrench. ', 0, 753, 837, 0, u'Lincolnshire', u'Joe Bloggs', u'http://a0.xxx.com/profile_images.jpg', 0, u'00bloggs', 10, u'London', 0, u'en', 3, u'http://sample.com')
我要做的是使用正则表达式在生物描述中查找逗号。当描述在双引号中时它可以正常工作,但是当我为单引号编辑正则表达式时,如果其中有像“I'm”这样的缩写,它就不起作用。
这是我的双引号正则表达式,它在双引号中找到逗号(我找到了here)
,(?=[^"]*"(?:[^"]*"[^"]*")*[^"]*$)
似乎正在发生的事情是“名称”正在抛弃单引号计数,因此它会在引号之外拾取逗号并去掉分隔符,并且某些行的列数较少
我正在尝试提出一个正则表达式,它可以使用u' 作为起点,也可以使用', 作为终点,并且只能在它们之间进行搜索,但我似乎无法接近。我是这个正则表达式的新手,我发现很难理解它的一些更复杂的形式。
非常感谢任何帮助。
【问题讨论】:
-
能否提供原字符串?
-
您好 Jan,您能澄清一下“原始字符串”的含义吗?我不太确定我是否关注