• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: How to parse a search string..
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to parse a search string..


  • Subject: Re: How to parse a search string..
  • From: Uli Kusterer <email@hidden>
  • Date: Mon, 13 Feb 2012 09:46:39 +0100

On 12.02.2012, at 23:02, David Delmonte wrote:
> I have a search box, and need to parse out some special characters (' and \).

 Do you? In most cases, ignoring some of the user's input just leads to wrong result. Instead, you should determine how to correctly escape the given characters so they make it through as text instead of doing something special. E.g. for an SQLite query, you usually just have to prefix special characters with a backslash (and any backslashes you want to go through verbatim as well, so they can be told from "special character"-backslashes).

> The search bar text is sbar.text.. How do I interrupt the string before it is sent and remove (or warn) of these characters... ? Many thanks..
>
> I've tried this:
>
> if ([sbar.text isEqualToString:(@"'")] || [sbar.text isEqualToString:(@"\\")]) {
> 			NSLog(@"Found You");
> 			sbar.text = nil;
>
> (This works when the characters are first in the string..)

 Your code above compares the entire string to another entire string. Unless the string only consists of a tick mark, or only of one backslash, this won't match. You have to use a call that searches the string for a substring, like rangeOfString:...

> and this:
>
> NSString *protectedString1 = sbar.text;
> NSString *protectedString2 = [protectedString1 stringByReplacingOccurrencesOfString:@"'" withString:@" "];
> sbar.text = protectedString2;
>
> But this loops :)


What do you mean "it loops" ? This should replace any tick marks with spaces in your string. What were you expecting it to do ... ?

Cheers,
-- Uli Kusterer
"The Witnesses of TeachText are everywhere..."




_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


References: 
 >How to parse a search string.. (From: David Delmonte <email@hidden>)

  • Prev by Date: Re: copy & isEqual nightmares
  • Next by Date: Re: copy & isEqual nightmares
  • Previous by thread: Re: How to parse a search string..
  • Next by thread: Stroke rendering bug in Core Graphics?
  • Index(es):
    • Date
    • Thread