Regex可以在字符串中切换字符吗?

时间:2013-09-21 00:26:43

标签: regex python-2.7

我有一个大包裹的包裹ID。这个db的问题是 这种模式是错误的。

0000-22N-6W-01
should be written:
0000-01-22N-6W

Regex可以进行切换,还是需要查看另一个python程序。

2 个答案:

答案 0 :(得分:2)

将模式^(.{4})(.{4})(.{3})(.{3})替换为\1\4\2\3

import re
input = raw_input()
output = re.sub(r'^(.{4})(.{4})(.{3})(.{3})', r'\1\4\2\3', input)
print output

测试 here

答案 1 :(得分:0)

您也可以在纯Python中执行此操作。味道很重要。

>>> data = "0000-22N-6W-01"
>>> parts = data.split('-')
>>> parts[1:] = parts[3], parts[1], parts[2]
>>> new_data = '-'.join(parts)
>>> new_data
'0000-01-22N-6W'