CFLib.org – Common Function Library Project

camelToSpace(str [, capitalize])

Last updated March 8, 2010

Version: 0 | Requires: ColdFusion MX | Library: StrLib

 
Rated 2 time(s). Average Rating: 4.5

Description:
This is not about furry puppets in a rocket ship, but a function that takes a camel cased string and returns it lower-cased with spaces between the words. Comes in handy if you want to generate human readable captions from (camel cased) table column names.

Return Values:
Returns a string

Example:

view plain print about
<cfoutput>
<cfset str='aCamelCasedVariable'>
#camelToSpace(str,true)#
<br/>
#camelToSpace(str)#
</cfoutput>

a very fancy column name 
id column

Parameters:

Name Description Required
str String to use Yes
capitalize Boolean to return capitalized words No

Full UDF Source:

view plain print about
<cfscript>
/**
 * Breaks a camelCased string into separate words
 * 8-mar-2010 added option to capitalize parsed words Brian Meloche brianmeloche@gmail.com
 * 
 * @param str      String to use (Required)
 * @param capitalize      Boolean to return capitalized words (Optional)
 * @return Returns a string 
 * @author Richard (brianmeloche@gmail.comacdhirr@trilobiet.nl) 
 * @version 0, March 8, 2010 
 */

function camelToSpace(str) {
    var rtnStr=lcase(reReplace(arguments.str,"([A-Z])([a-z])","&nbsp;\1\2","ALL"));
    if (arrayLen(arguments) GT 1 AND arguments[2] EQ true) {
        rtnStr=reReplace(arguments.str,"([a-z])([A-Z])","\1&nbsp;\2","ALL");
        rtnStr=uCase(left(rtnStr,1)) & right(rtnStr,len(rtnStr)-1);
    }
return trim(rtnStr);
}
</cfscript>
blog comments powered by Disqus

Search CFLib.org


Latest Additions

Henry Ho Henry Ho added
queryExecute
8 day(s) ago

Rick Root Rick Root added
deleteDirectory
11 day(s) ago

Troy Pullis Troy Pullis added
firstXDayOfMonth
a while ago

Henry Ho Henry Ho added
arrayMap
a while ago

Top Rated

Darwan Leonardo Sitepu backupDatabase
Rated 5.0, 45 time(s)

Barney Boisvert indentXml
Rated 5.0, 12 time(s)

Rachel Lehman deAccent
Rated 5.0, 9 time(s)

Markus Schneebeli                                 ListRemoveByStri...
Rated 5.0, 4 time(s)

Created by Raymond Camden / Design by Justin Johnson