使用正则表达式在字符串中搜索大写字母

时间:2017-12-24 14:18:57

标签: python python-2.7

我试图在字符串中找到3个,4个或5个连续的大写字母。他们可以进行'$'或'('但这是可选的。以下是我处理大写字母的内容,但我还没弄清楚如何检查进行'$'或'('。<<。 p>

ex:($ ABC),(ABC),$ ABC,ABC&lt; ---所有人都应触发

searches = [r'[A-Z]{5}', r'[A-Z]{4}', r'[A-Z]{3}']
correct = '$ABCD'

        for search in searches:
            confirmed = re.search(search, correct)
            if confirmed:
                return confirmed
            else:
                return False

    Process finished with exit code 0

1 个答案:

答案 0 :(得分:2)

此处regex过度,只需使用普通的Python。

>>> correct = '$ABCD'
>>> any(correct[i:i+3].isupper() for i in range(0,len(correct)-3,3))
True
>>> correct = "AbCD"
>>> any(correct[i:i+3].isupper() for i in range(0,len(correct)-3,3))
False