LISTSERV at the University of Georgia
Menubar Imagemap
Home Browse Manage Request Manuals Register
Previous messageNext messagePrevious in topicNext in topicPrevious by same authorNext by same authorPrevious page (March 2008, week 1)Back to main SAS-L pageJoin or leave SAS-L (or change settings)ReplyPost a new messageSearchProportional fontNon-proportional font
Date:         Sun, 2 Mar 2008 23:51:44 -0600
Reply-To:     Yu Zhang <zhangyu05@GMAIL.COM>
Sender:       "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From:         Yu Zhang <zhangyu05@GMAIL.COM>
Subject:      Re: compare two string
Comments: To: Irene <irenelj23@gmail.com>
In-Reply-To:  <ab11b2d9-7bb8-4291-9aa4-223f1bfc9c7a@u72g2000hsf.googlegroups.com>
Content-Type: text/plain; charset=ISO-8859-1

First, from SAS doc, <doc> In the COMPARE function, if string-1 and string-2 do not differ, COMPARE returns a value of zero. If the arguments differ

-

the sign of the result is negative if string-1 precedes string-2 in a sort sequence, and positive if string-1 follows string-2 in a sort sequence

</doc>

in your exmple, you are using modifier 'IL',which tell SAS to ignore the case and remove the leading blanks. since the string1 has shoter length than string2. so before comparison, SAS add trailing blanks to make two string same length. blank is smaller than any non-missing letters. string1 will be smaller than string2. the negative sign will be in the result.

HTH

Yu

On Sun, Mar 2, 2008 at 11:24 PM, Irene <irenelj23@gmail.com> wrote:

> String1="abc" String2="ABCDEFG" > compare(string1, string2, 'IL')=-4 > why? I can not understand why it is equal negative 4. I know that the > two string are different from the fourth character but why negative? > > Thanks for your help! >


Back to: Top of message | Previous page | Main SAS-L page