我想检查一个字符串是否为驼峰式( bool 型)。我倾向于使用正则表达式,但任何其他优雅的解决方案都可以。我写了一个简单的正则表达式
(?:[A-Z])(?:[a-z])+(?:[A-Z])(?:[a-z])+
这是正确的吗?还是我错过了什么?
编辑
我想在格式如下的文本文档集合中捕获名称
McDowell
O'Connor
T.Kasting
编辑2
我已根据评论中的建议修改了我的正则表达式
(?:[A-Z])(?:\S?)+(?:[A-Z])(?:[a-z])+
最佳答案
您可以检查一个字符串是否同时具有大写和小写字母。
def is_camel_case(s):
return s != s.lower() and s != s.upper() and "_" not in s
tests = [
"camel",
"camelCase",
"CamelCase",
"CAMELCASE",
"camelcase",
"Camelcase",
"Case",
"camel_case",
]
for test in tests:
print(test, is_camel_case(test))
输出:
camel False
camelCase True
CamelCase True
CAMELCASE False
camelcase False
Camelcase True
Case True
camel_case False
关于python - 检查Python中的驼峰大小写,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10182664/