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. Automatically setup raw_id_fields ForeignKey & OneToOneField by agusmakmun 8 months ago
  2. Crispy Form by sourabhsinha396 8 months, 3 weeks ago
  3. ReadOnlySelect by mkoistinen 9 months ago
  4. Verify events sent to your webhook endpoints by santos22 10 months ago
  5. Django Language Middleware by agusmakmun 10 months, 2 weeks ago

Comments

Please login first before commenting.