Re: StringBuilder Extension: IsQuotedBy

Peter Obiefuna <[email protected]> Wed, 13 Feb 2008 16:56:38 -0700
Newsgroups gmane.comp.windows.devel.dotnet.clr
Message-ID <[email protected]>
Brad,
This algorithm looks inexpensive enough to me. But I think that whitespace
padding (or non-printables) may mask the result. For that reason, I would
prefer a RegularExpression.Match.
P

--------------------------------------------------
From: "Brady Kelly" <[email protected]>
Sent: Wednesday, February 13, 2008 4:33 PM
To: <[email protected]>
Subject: [DOTNET-CLR] StringBuilder Extension: IsQuotedBy

> I was playing around with avoiding, at all costs, creating surplus
> strings,
> and came up with the following method to see if a StringBuilder, that I
> use
> for each of a collection of string fields, is surrounded by a certain
> string, e.g. double quotes.  I was just wondering if this is an efficiant
> way of doing it:
>
>
>
>        public static bool IsQuotedBy(this StringBuilder sb, string
> quoteString)
>
>        {
>
>            // Check if the first characters match the quote string.
>
>            for (int i = 0; i < quoteString.Length; i++)
>
>            {
>
>                if (sb[i] != quoteString[i])
>
>                {
>
>                    return false;
>
>                }
>
>            }
>
>
>
>            // Check if the last characters match the quote string.
>
>            for (int i = sb.Length - quoteString.Length; i < sb.Length; i++
> )
>
>            {
>
>                int qsIndex = 0;
>
>                if (sb[i] != quoteString[qsIndex++])
>
>                {
>
>                    return false;
>
>                }
>
>            }
>
>
>
>            return true;
>
>        }
>
>
> ===================================
> This list is hosted by DevelopMentor®  http://www.develop.com
>
> View archives and manage your subscription(s) at
> http://discuss.develop.com
>

===================================
This list is hosted by DevelopMentor®  http://www.develop.com

View archives and manage your subscription(s) at http://discuss.develop.com