0

所以我有这个字母数字单词“DA7L1234AAAA”,我正在尝试使用正则表达式匹配其中的每个字符,但基本上没有成功。下面是我的 python 脚本和更多关于这个词的解释,

DA7LD11234AAAA
D - It can be either one of D or T or U or P
A - alpha-numeric
7 - alpha-numeric
L - alpha-numeric
D - letter
1 - Number
1 - Number
2 - Number
3 - Number
4 - Number
A - letter
A - Letter
A - Letter
A - letter

import re
import os
import shutil
import os.path

var = "DA7L1234AAAA"
regex = re.compile("[dtup]\w{1}\w{1}\w{1}\w{1}\w{1}\d{1}\d{1}\d{1}\d{1}\[a-zA-Z]\[a-zA-Z]\[a-zA-Z]\[a-zA-Z]",re.IGNORECASE)
if (regex.match(var)):
    print "true"
else:
    print "false"

请帮忙。我是正则表达式和 python 的菜鸟

4

1 回答 1

1

您可以使用描述列表后面的这个正则表达式:

(?i)[dptu][a-z0-9]{3}[a-z][0-9]{5}[a-z]{4}

(?i)是使模式不区分大小写的修饰符

于 2013-07-12T14:50:48.510 回答