mirror of
https://github.com/graphql-python/graphene.git
synced 2025-02-13 10:00:39 +03:00
22 lines
675 B
Python
22 lines
675 B
Python
import re
|
|
|
|
|
|
# From this response in Stackoverflow
|
|
# http://stackoverflow.com/a/19053800/1072990
|
|
def to_camel_case(snake_str):
|
|
components = snake_str.split('_')
|
|
# We capitalize the first letter of each component except the first one
|
|
# with the 'title' method and join them together.
|
|
return components[0] + "".join(x.title() if x else '_' for x in components[1:])
|
|
|
|
|
|
# From this response in Stackoverflow
|
|
# http://stackoverflow.com/a/1176023/1072990
|
|
def to_snake_case(name):
|
|
s1 = re.sub('(.)([A-Z][a-z]+)', r'\1_\2', name)
|
|
return re.sub('([a-z0-9])([A-Z])', r'\1_\2', s1).lower()
|
|
|
|
|
|
def to_const(string):
|
|
return re.sub('[\W|^]+', '_', string).upper()
|