我们有一个包含人员记录的工作表的Excel文件。Excel正规表达式,还是导出到Python? ; Python中的“Vlookup”?
1.电话号码卫生
其中一个字段是一个电话号码字段,其中包含格式如电话号码:
+XX(Y)ZZZZ-ZZZZ
(其中X,Y和Z是整数)。
也有一些记录具有较少的数字,如:
+XX(Y)ZZZ-ZZZZ
。有些人真的搞砸了格式:
+XX(Y)ZZZZ-ZZZZ/ZZZZ
或:
ZZZZZZZZ
我们需要将这些全部清理成以下格式:
0YZZZZZZZZ (or OYZZZZZZ with those with less digits).
2.监事详细
每个人填写也有一个主管,给出的数字标识。我们需要做一个查询来获取该主管的姓名和电子邮件地址,并将其添加到该行。
该查找将首先在同一张工作表上(即搜索自己),然后可以更多人员回退到另一个工作簿。
3.方法?
对于第一个问题,我想在Excel/VBA中以某种方式使用正则表达式来进行解析。我的Excel-fu不是最好的,但我想我可以学习......哈哈。这一点上的任何特定点?
但是,我最好将XLS导出为CSV(例如使用xlrd),然后使用Python修复电话号码?
对于第二种方法,我想在Excel中使用vlookups来拉入数据,并以某种方式让它通过,首先搜索自身,然后在外部工作簿上,然后将错误文本。不知道如何做最后一部分。
但是,如果我碰巧选择导出为CSV并在Python中执行此操作,那么执行vlookup的有效方法是什么? (我应该转换成一个字典,或者只是重复吗?或者有没有更好的,或者更地道的方式?)
干杯, 维克多
你的问题空间很大,用更直接的问题提出多个问题可能会更好,所以我们可以帮助你。很多这些决定可以根据您的偏好进行。 – dlamotte 2010-05-05 01:38:54
@xyld:嗯,我应该删除这个问题,然后把它分成两个问题吗?这只是我选择的一种方式(Python与Excel/VBA),理想情况下它可以同时处理这两种方法。谢谢,Victor – victorhooi 2010-05-05 01:57:25
保持开放不会造成任何伤害,但可能会转载您对特定方法的具体问题。 – dlamotte 2010-05-05 02:05:47