How to compare list strings case insensitive

Just starting out? Need help? Post your questions and find answers here.
AZJIO
Addict
Addict
Posts: 2143
Joined: Sun May 14, 2017 1:48 am

How to compare list strings case insensitive

Post by AZJIO »

Maybe for this you need to come up with an additional sign <=>
string1 <=> string2

Code: Select all

Ext$ = "png"
i = 0

Structure ListRE
	List ext.s()
EndStructure

Global Dim HLightRegex.ListRE(0)
AddElement(HLightRegex(i)\ext())
HLightRegex(i)\ext() = "PNG"
; AddElement(HLightRegex(i)\ext())
; HLightRegex(i)\ext() = "Png"

Debug PeekS(SelectElement(HLightRegex(i)\ext(), ListIndex(HLightRegex(i)\ext()))) ; ?
; Debug PeekS(SelectElement(HLightRegex(i)\ext(), ListIndex(HLightRegex(i)\ext())), -1, #PB_Unicode) ; ?

If CompareMemoryString(SelectElement(HLightRegex(i)\ext(), ListIndex(HLightRegex(i)\ext())), @Ext$, #PB_String_NoCase) = #PB_String_Equal
	Debug 1
Else
	Debug 0
EndIf
If FindString(Ext$, HLightRegex(i)\ext(), 1, #PB_String_NoCase) And FindString(HLightRegex(i)\ext(), Ext$, 1, #PB_String_NoCase)
	Debug 1
Else
	Debug 0
EndIf
If FindString(Ext$, HLightRegex(i)\ext(), 1, #PB_String_NoCase) And Len(HLightRegex(i)\ext()) = Len(Ext$)
	Debug 1
Else
	Debug 0
EndIf
User avatar
HeX0R
Addict
Addict
Posts: 1189
Joined: Mon Sep 20, 2004 7:12 am
Location: Hell

Re: How to compare list strings case insensitive

Post by HeX0R »

Code: Select all

Ext$ = "png"
i = 0

Structure ListRE
	List ext.s()
EndStructure

Global Dim HLightRegex.ListRE(0)
AddElement(HLightRegex(i)\ext())
HLightRegex(i)\ext() = "PNG"
; AddElement(HLightRegex(i)\ext())
; HLightRegex(i)\ext() = "Png"

; SelectElement(HLightRegex(i)\ext(), ListIndex(HLightRegex(i)\ext()))
; *s.string = @HLightRegex(i)\ext()
; Debug *s\s
; Debug PeekS(PeekI(*s))

If CompareMemoryString(PeekI(SelectElement(HLightRegex(i)\ext(), ListIndex(HLightRegex(i)\ext()))), @Ext$, #PB_String_NoCase) = #PB_String_Equal
	Debug 1
Else
	Debug 0
EndIf
If FindString(Ext$, HLightRegex(i)\ext(), 1, #PB_String_NoCase) And FindString(HLightRegex(i)\ext(), Ext$, 1, #PB_String_NoCase)
	Debug 1
Else
	Debug 0
EndIf
If FindString(Ext$, HLightRegex(i)\ext(), 1, #PB_String_NoCase) And Len(HLightRegex(i)\ext()) = Len(Ext$)
	Debug 1
Else
	Debug 0
EndIf
Post Reply