擅长:python、mysql、java
<p>你试过用“^[A-Z]+$”和“^[A-Z]+$”来检查整个字符串是大写还是小写?在</p>
<p>“aaaaaaaaaaa”字符串与您的初始正则表达式“[A-Z]+”匹配,因为它会找到“A”零次或更多次(正好9次),但后面的A不匹配。如果通过添加“$”强制regex直到行尾,它应该可以工作。同样的问题也会发生在“aaaaaaaa”中,所以也需要行“^”的开头。在</p>
<p>所以:</p>
<pre><code>if re.match("^[A-Z]+$", entered_string):
stringscore += 5
elif re.match("^[a-z]+$", entered_string):
stringscore += 5
elif re.match('^[A-Za-z]+$', entered_string):
stringscore += 10
</code></pre>
<p>这是明确的,没有混合不同的if分支。在</p>