Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Removing extra spaces and limiting input to A-Z, 1-0, an
Message
From
04/10/2006 17:18:22
 
 
To
04/10/2006 14:42:56
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
01159441
Message ID:
01159527
Views:
24
>>>>I am writing an applications where I want to:
>>>>
>>>>1. remvoe extra spaces between words, i.e. "xxx yyy" becomes "xxx yyy" and that the input is only A-Z and 0-9 (i.e. no specail characters)
>>>>
>>>>2. the input hast the format "xxx.yyy.ccc.etc) where "xxx", "yyy", "ccc", etc can only A-Z, 0-9, last character cannot be a period, and first character of "xxx", "yyy", "ccc", etc is A-Z.
>>>>
>>>>My questions are how to best remove the extra spaces and how check that only A-Z and 0-9 are entered.
>>>>
>>>>TIA
>>>
>>>Claude,
>>>
>>>For removing extra spaces, this should do the trick.
>>>
>>>cString = "xxx  yyy  zzz"
>>>cString = STRTRAN(cString,SPACE(2),SPACE(1),1,OCCURS(SPACE(2),cString))
>>>
>>>Regards,
>>
>>Actually, this would only work if there was only a double space... not a triple or 4 spaces...
>>
>>
>>cString = "xxx     yyy         zzz"
>>do while at( "  ", cString ) > 0
>>  cString = strtran( cString, "  ", " " )
>>enddo
>>
>>
>>
>>As for stripping the other invalid characters you don't want to allow, I would pre-build a string of chars you DONT want, then use CHRTRAN() such as
>>
>>
>>lcInvalid = "`~!@#$%^&*()-_=+{}[]\|;:,<.>/?'" + '"'
>>
>>cString = "xx@()x]  ]  ] y]yy@(*!$         zzz"
>>cString = chrtran( cString, lcInvalid, "" )
>>
>>the CHRTRAN() will take the string, look for each character found in lcInvalid, and replace it with the character in the same position in parameter 3 (which empty will result in no character and thus cut out of the string).
>
>Thanks, first part works like a charm.
>
>In second part I do NOT want to strip out the in valid characters, I want to check if the are in the string. If string had invalid characters I would tell the user.

Then simply change the last line from
cString = chrtran( cString, lcInvalid, "" )

to

lcNewString = chrtran( cString, lcInvalid, "" )
IF LEN(lcNewString) # LEN(cString)
    inform the user
Previous
Reply
Map
View

Click here to load this message in the networking platform