haha, yes we _all_ know that the regex will be much faster. I was just
wondering about the three points I made.

On Wed, Aug 11, 2010 at 11:38 AM, Michael Dinowitz <
mdino...@houseoffusion.com> wrote:

>
> The code that replaces each letter at a time will be much slower as it
> is looking through the entire string for a match for each letter. The
> RegEx isn't doing any real work for the pattern match as it is getting
> everything. The replace is also not a lot of work as it's just
> shifting everything within a certain range (lowercase) to a different
> range (uppercase). Ascii shift, basically.
>
>
> On Wed, Aug 11, 2010 at 11:30 AM, Medic <hofme...@gmail.com> wrote:
> >
> > Haha. Now THAT is a nice waste of space. I like how you test for the
> > existence of the letter before you replace it.
> >
> > This actually makes me want to run speed tests on what would be faster:
> >
> > 1. testing for existence of lowercase letter - replacing lowercase with
> > uppercase using replace.
> > 2. not testing and just replacing the lowercase with the uppercase using
> > replace.
> > 3. just using replacenocase and replacing all letters with the uppercase
> > equiv.
> >
> > I bet if I showed this code to my boss he'd be like "whoa, that's deep."
> >
> >
> >
> >
> > On Wed, Aug 11, 2010 at 11:18 AM, Jacob <ja...@excaliburfilms.com>
> wrote:
> >
> >>
> >> Not a function, but..
> >>
> >> <cfset tempString = "WhAtEvERStriNG">
> >>
> >> <cfif find("A", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "A", "a", "ALL")>
> >> </cfif>
> >> <cfif find("B", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "B", "b", "ALL")>
> >> </cfif>
> >> <cfif find("C", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "C", "c", "ALL")>
> >> </cfif>
> >> <cfif find("D", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "D", "d", "ALL")>
> >> </cfif>
> >> <cfif find("E", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "E", "e", "ALL")>
> >> </cfif>
> >> <cfif find("F", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "F", "f", "ALL")>
> >> </cfif>
> >> <cfif find("G", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "G", "g", "ALL")>
> >> </cfif>
> >> <cfif find("H", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "H", "h", "ALL")>
> >> </cfif>
> >> <cfif find("I", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "I", "i", "ALL")>
> >> </cfif>
> >> <cfif find("J", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "J", "j", "ALL")>
> >> </cfif>
> >> <cfif find("K", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "K", "k", "ALL")>
> >> </cfif>
> >> <cfif find("L", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "L", "l", "ALL")>
> >> </cfif>
> >> <cfif find("M", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "M", "m", "ALL")>
> >> </cfif>
> >> <cfif find("N", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "N", "n", "ALL")>
> >> </cfif>
> >> <cfif find("O", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "O", "o", "ALL")>
> >> </cfif>
> >> <cfif find("P", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "P", "p", "ALL")>
> >> </cfif>
> >> <cfif find("Q", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "Q", "q", "ALL")>
> >> </cfif>
> >> <cfif find("R", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "R", "r", "ALL")>
> >> </cfif>
> >> <cfif find("S", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "S", "s", "ALL")>
> >> </cfif>
> >> <cfif find("T", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "T", "t", "ALL")>
> >> </cfif>
> >> <cfif find("U", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "U", "u", "ALL")>
> >> </cfif>
> >> <cfif find("V", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "V", "v", "ALL")>
> >> </cfif>
> >> <cfif find("W", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "W", "w", "ALL")>
> >> </cfif>
> >> <cfif find("X", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "X", "x", "ALL")>
> >> </cfif>
> >> <cfif find("Y", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "Y", "y", "ALL")>
> >> </cfif>
> >> <cfif find("Z", tempString) gt 0>
> >>        <cfset tempString = replace(tempString, "Z", "z", "ALL")>
> >> </cfif>
> >>
> >> <cfoutput>#tempString#</cfoutput>
> >>
> >> -----Original Message-----
> >> From: Rick Root [mailto:rick.r...@gmail.com]
> >> Sent: Monday, August 09, 2010 10:18 AM
> >> To: cf-community
> >> Subject: Dysfunctional contest
> >>
> >>
> >> Write a function to convert a string to lower case
> >>
> >> Do not use lcase()
> >>
> >> Example:
> >>
> >>
> >> <cffunction name="toLowerCase" access="public" output="false"
> >> returnType="string">
> >>        <cfargument name="src" type="string" required="yes">
> >>
> >>        <cfset var result = "">
> >>        <cfloop from="1" to="#len(arguments.src)#" step="1" index="pos">
> >>                <cfset thisChar = mid(arguments.src,pos,1)>
> >>                <cfif asc(thisChar) gte 65 and asc(thisChar) lte 90>
> >>                        <cfset result &= chr(asc(thisChar)+32)>
> >>                <cfelse>
> >>                        <cfset result &= thisChar>
> >>                </cfif>
> >>        </cfloop>
> >>        <cfreturn result />
> >> </cffunction>
> >>
> >> PRIZE:  Respect for writing incredibly convoluted code, or lack of
> respect
> >> for having time to waste on such inanity
> >>
> >> Alternatively, write your own convoluted function for something
> similarly
> >> simple.
> >>
> >> This thread was inspired by the following article:
> >>
> >>
> >>
> http://www.easycfm.com/coldfusion/forums/printthread.cfm?Forum=12&Topic=1183
> >> 1
> >>
> >> Rick
> >>
> >>
> >>
> >>
> >
> >
>
> 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Order the Adobe Coldfusion Anthology now!
http://www.amazon.com/Adobe-Coldfusion-Anthology-Michael-Dinowitz/dp/1430272155/?tag=houseoffusion
Archive: 
http://www.houseoffusion.com/groups/cf-community/message.cfm/messageid:324657
Subscription: http://www.houseoffusion.com/groups/cf-community/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/groups/cf-community/unsubscribe.cfm

Reply via email to