[futurebasic] Re: [FB] Toolbox FN RelString

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : December 1998 : Group Archive : Group : All Groups

From: Chris Stasny <staz@...>
Date: Wed, 30 Dec 1998 11:45:05 -0600
>Staz, where do I get the result of the comparison? Also, I thought there
>were boolean inputs for whether the comparison is case and diacritic
>sensitive. (I still wanna' know how you do that.)
>
>-mark-
>
>>
>>'-------------------------------------
>>'relString
>>'-------------------------------------
>>LOCAL FN relString(@word1&,@word2&)
>>  `     move.l  ^word1&,a0
>>  `     move.l  ^word2&,a1
>>  `     moveq   #0,d0
>>  `     move.b  (a0)+,d0
>>  `     swap    d0
>>  `     move.b  (a1)+,d0
>>  `     dc.w    $A050
>>END FN
>>
>>


Results are...

_sortsBefore = -1 ' { first string < second string }
_sortsEqual  =  0 ' { first string = second string }
_sortsAfter  =  1 ' { first string > second string }


To watch for case or diacritical marks, you must change the trap. Here is
an example of a case sensetive version.

'-------------------------------------
'relString
'-------------------------------------
LOCAL FN relStringCaseSen(@word1&,@word2&)

  `     move.l  ^word1&,a0
  `     move.l  ^word2&,a1
  `     moveq   #0,d0
  `     move.b  (a0)+,d0
  `     swap    d0
  `     move.b  (a1)+,d0
  `     dc.w    $A450
END FN

The trick is this...

If it's a straight compare, use $A050
If you want case sensetivity, add $400  ($A450)
If you want diacritical sensetivity, add $200 ($A250)
If you want both, add $400 and $200 ($650)





In case you are interested, my dog now has an email address. You can write
to her at summer@.... Don't expect a reply tho. She can't read.

-STAZ   ~)~

--------------------------------------------------------------
STAZ Software * 4387 Leisure Time Dr * Diamondhead, MS 39525
--------------------------------------------------------------
Orders: 800-348-2623      EMail http: //www.stazsoftware.com
  Tech: 228-255-7085             FAX: 228-255-7086
--------------------------------------------------------------