Login

Convert CamelCase to lowercase_with_underscores

Author:
jdriscoll
Posted:
February 5, 2008
Language:
Python
Version:
.96
Tags:
utilities formatting one-liners
Score:
0 (after 0 ratings)

Just a simple regex function to convert a camel case string ("ClassName") to a lower case string with underscores ("class_name"). Came across a need for this when I was trying to add properties to a model at runtime using object.__class__.__name__. This is a modification of the function "get_verbose_name" found in django.db.models.options.

1
camelcase_to_underscore = lambda str: re.sub('(((?<=[a-z])[A-Z])|([A-Z](?![A-Z]|$)))', '_\\1', str).lower().strip('_')

More like this

  1. "Magic Link" Management Command by webology 3 weeks ago
  2. Closest ORM models to a latitude/longitude point by simonw 3 weeks ago
  3. Log the time taken to execute each DB query by kennyx46 3 weeks, 1 day ago
  4. django database snippet by ItsRLuo 3 weeks, 6 days ago
  5. Serialize a model instance by chriswedgwood 1 month, 3 weeks ago

Comments

Please login first before commenting.