Dex*_*ter 5 python regex camelcasing
我想检查字符串是否是驼峰情况(布尔值).我倾向于使用正则表达式,但任何其他优雅的解决方案都可行.我写了一个简单的正则表达式
(?:[A-Z])(?:[a-z])+(?:[A-Z])(?:[a-z])+
Run Code Online (Sandbox Code Playgroud)
这是正确的吗?或者我错过了什么?
编辑
我想在格式的文本文档集合中捕获名称
McDowell
O'Connor
T.Kasting
Run Code Online (Sandbox Code Playgroud)
EDIT2
我根据评论中的建议修改了我的正则表达式
(?:[A-Z])(?:\S?)+(?:[A-Z])(?:[a-z])+
Run Code Online (Sandbox Code Playgroud)
Wil*_*ord 19
您可以检查字符串是否包含大写和小写.
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))
Run Code Online (Sandbox Code Playgroud)
输出:python camel.py
camel False
camelCase True
CamelCase True
CAMELCASE False
camelcase False
Camelcase True
Case True
camel_case False
Run Code Online (Sandbox Code Playgroud)