正则表达式匹配格式

时间:2015-07-21 14:41:39

标签: python regex spotfire

我有一个名称格式如下的文件:

Last, First Middle Initial

在某些情况下,个人可能没有中间的初始

Last, First

我想使用正则表达式将顺序更改为

First Middle, Last name

First, Last Name (when there is no middle initial)

有人可以帮助解决可以实现此目的的表达方式吗?

如何使用正则表达式为这些案例设置条件字段?我想设置一个if函数,如果名称字段格式等于两种可能性,它将使用相应的表达式重新排列名称。我正在使用Spotfire客户端执行此操作。

谢谢!

1 个答案:

答案 0 :(得分:2)

实施:

import re
R = re.compile(r"(\w+),\s+(\w+)(\s*\w*)")

def convert(s):
    return R.sub(r"\2\3, \1", s)

并测试:

assert convert("Last, First Middle") == "First Middle, Last"
assert convert("Last, First") == "First, Last"