Skip navigation.
 
mlRe: Searching for "whole word" in NSString
FROM : Citizen
DATE : Tue Jan 29 20:05:03 2008

On 29 Jan 2008, at 18:12, John Stiles wrote:

> I'm trying to find a substring in an NSString. But I want to find 
> whole words (e.g. like in the Find panel when you choose "Full word" 
> from the popup, rather than "Contains" or "Starts With").
>
> Unless I'm missing something, it looks like NSString's -
> rangeOfString:options:range:locale: doesn't have an option for 
> finding whole words.
>
> How does the Find panel do it, then? Am I going to have to "roll my 
> own" code for string searching? That sounds error-prone to me; I'd 
> much rather have the OS do it.


You could get close with generating the characters you expect to find 
at the word boundaries with:

NSCharacterSet * wordBoundriesCharacterSet =  [[NSCharacterSet 
letterCharacterSet] invertedSet];

You would need to change this accordingly if you did not want numbers 
to be considered as a word boundary. You could of course create a 
boundary character set with just whitespace and punctuation marks - it 
just depends on how you would like the final feature to work.

You could then use this character set with an NScanner to search for 
"Full words".

If you have not used an NSScanner before, it is covered in a chapter 
of the Strings Programming Guide for Cocoa: <http://developer.apple.com/documentation/Cocoa/Conceptual/Strings/introStrings.html
>

Of course someone may have a better approach.

Cheers,
Dave
------
David Kennedy (http://www.zenopolis.com)

Related mailsAuthorDate
mlSearching for "whole word" in NSString John Stiles Jan 29, 19:12
mlRe: Searching for "whole word" in NSString Citizen Jan 29, 20:05
mlRe: Searching for "whole word" in NSString Douglas Davidson Jan 29, 20:20
mlRe: Searching for "whole word" in NSString mmalc crawford Jan 29, 20:23
mlRe: Searching for "whole word" in NSString John Stiles Jan 29, 20:29
mlRe: Searching for "whole word" in NSString John Stiles Jan 29, 20:32
mlRe: Searching for "whole word" in NSString John Stiles Jan 29, 20:38
mlRe: Searching for "whole word" in NSString John Stiles Jan 29, 20:45
mlRe: Searching for "whole word" in NSString Douglas Davidson Jan 29, 21:05
mlRe: Searching for "whole word" in NSString Mike Wright Jan 29, 21:28
mlRe: Searching for "whole word" in NSString Mike Wright Jan 30, 17:17
mlRe: Searching for "whole word" in NSString John Stiles Jan 30, 20:37
mlRe: Searching for "whole word" in NSString Deborah Goldsmith Feb 6, 04:30
mlRe: Searching for "whole word" in NSString Mike Wright Feb 6, 06:27
mlRe: Searching for "whole word" in NSString John Stiles Feb 6, 18:25
mlRe: Searching for "whole word" in NSString Aki Inoue Feb 6, 23:19
mlRe: Searching for "whole word" in NSString Deborah Goldsmith Feb 7, 04:03