Re: NSString and Regular Expressions

2009-12-14 Thread Dave DeLong
RegexKit is the best (read: simplest) way to get regular expression support 
into your Cocoa apps.  http://regexkit.sourceforge.net  It's also possible to 
use NSPredicate for simple matching.

You can find a couple of other options listed on this page:  
http://cocoaheads.byu.edu/resources/regex

Cheers,

Dave

On Dec 14, 2009, at 3:34 PM, Phil Hystad wrote:

 I was sort of suspecting that regular expression matches would be supported 
 by NSString yet I find no message interface for supporting regular 
 expressions.  So, is the only capability for handling regular expressions in 
 Objective-C the Posix Regex library?


smime.p7s
Description: S/MIME cryptographic signature
___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: NSString and regular expressions

2009-08-03 Thread BareFeet

Hi All,

RegexKitLite looks promising. It claims to only require you to add  
the .h and .m file to your project and link to the libicucore.dylib  
library.


I managed to incorporate RegexKitLite fairly easily once I found in  
the documentation the steps to link to the libicucore.dylib library.


Thanks for all your comments about ICU vs PCRE. I've thrown a couple  
of fairly involved regexes at it that I've previously used in Perl  
(therefore PCRE) and haven't had to make any adjustments at all.


I've wrapped it in a test Cocoa app that shows capture in an outline  
view, with each group showing as a child item of its capture. It's  
working very well so far. The essence of my use of RegexKitLite here is:


- (IBAction)update:(id)sender
{
NSString * regexString = [regexField string];
NSString * inputString = [inputField string];

	[outputArray release]; // already defined as an instance variable in  
the .h file

NSError * myError = nil;
NSRange myRange = NSMakeRange(0, [inputString length]);
	outputArray = [inputString  
arrayOfCaptureComponentsMatchedByRegex:regexString  
options:RKLNoOptions range:myRange error:myError];

[outputArray retain];
[outputOutline reloadData];
}
@end

I'm new to Cocoa and Objective-C. So please tell me gently of any  
glaring errors above


Now to use it in my real project, I need to port over my routines that  
parsed SQL statements. I have been doing this by:


1. Using regex to replace quoted items (eg bounded by  or ' or a  
comment bounded by /* */ or -- \n) with placeholders.


2. Using regex to parse the SQL (now containing placeholders) into  
desired SQL components


3. Replacing placeholders with original text.

Before I go ahead and port this same method across, is there any built  
in functionality in Cocoa that will facilitate this (or part of it)  
directly?


Thanks,
Tom
BareFeet

___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-31 Thread Alastair Houghton

On 31 Jul 2009, at 01:04, BareFeet wrote:

The documentation notes: Warning: Apple does not officially support  
linking to the libicucore.dylib library. In reality, how worried  
should I be about this?


I wouldn't lose much sleep over it, to be honest, as long as you stick  
to ICU's C API (as opposed to the C++ part).


As far as I understood, the original reason for not providing the  
headers was that the C++ ABI was not stable and so a program linked  
against ICU on one version of Mac OS X might not work on a subsequent  
version (assuming it went and used the C++ API).  I don't know why the  
headers still aren't shipped with OS X...



I guess I can deal with that.

Has anyone discovered any other issues (or had successes) dealing  
with ICU syntax in RegexKitLite and RegexKitLite in general?


ICU's regexp engine is pretty complete, though it doesn't have:

1. Named capture groups; e.g. in Python you can do

  (?PmyGroup[a-zA-Z0-9]*)

and you can then retrieve the capture by name rather than by index.   
This is a very useful feature as it lets you alter your regexp without  
having to renumber everything.


You can also do backrefs to named capture groups (in Python) using e.g.

  (?P=myGroup)

Again, this makes it easier to change your regexp without breaking  
everything.


2. Conditional expressions, e.g.

  (?(myGroup)then-part|else-part)

The above would match the text then-part *if* a group named  
myGroup had already matched, otherwise it would match else-part.   
You can also use a number rather than a name to identify the match  
group, and lookahead/lookbehind expressions are supported in there also.


I wrote and submitted a patch some time ago to add these features to  
ICU.  I don't know why but it doesn't seem to have made it back to the  
main source tree.  If anyone is interested in these extras, they're  
here (though that patch was generated against ICU 3.6):


  http://alastairs-place.net/2006/09/icu-regular-exp/

There are open tickets in the ICU bug tracker (#2907 and #5312) that  
refer to these.


Kind regards,

Alastair.

--
http://alastairs-place.net



___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-31 Thread Alastair Houghton

On 31 Jul 2009, at 01:18, Charles Srstka wrote:

ICU is an open-source project, so if you're concerned about the  
Apple-supplied one disappearing, you can just go download the latest  
sources, compile it yourself, and then either link it statically or  
include the dylib inside your bundle.


http://site.icu-project.org/


This is all true, but it is worth pointing out that ICU includes a  
data file that contains (amongst other things) time zone data, Unicode  
data, localisation information and other stuff.


The issue there is that *occasionally* the data file needs updating.   
For instance when some politician decides that now would be a good  
time to change the time zone rules for the United States (as happened  
recently).  Or when the Unicode specification is revised or bugs are  
found in the CLDR data.  If you have multiple copies of ICU, each one  
will need updating separately... and because the ICU data file is  
version specific to some extent, you can't necessarily share the data.


You can avoid this, for the most part, by using Core Foundation or  
Cocoa where possible, since that will use the system's copy of the  
data which will at least result in consistent behaviour.  But if you  
use ICU directly, or rely on something that does, and you choose to  
bundle ICU with your application, you should be aware of this issue.


Kind regards,

Alastair.

--
http://alastairs-place.net



___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-31 Thread Jean-Daniel Dupas


Le 31 juil. 09 à 11:30, Alastair Houghton a écrit :


On 31 Jul 2009, at 01:04, BareFeet wrote:

The documentation notes: Warning: Apple does not officially  
support linking to the libicucore.dylib library. In reality, how  
worried should I be about this?


I wouldn't lose much sleep over it, to be honest, as long as you  
stick to ICU's C API (as opposed to the C++ part).


As far as I understood, the original reason for not providing the  
headers was that the C++ ABI was not stable and so a program linked  
against ICU on one version of Mac OS X might not work on a  
subsequent version (assuming it went and used the C++ API).


This is also true for the C API. From the ICU user guide:
ICU Binary Compatibility: Using ICU as an Operating System Level Library

ICU4C may be configured for use as a system library in an environment  
where applications that are built with one version of ICU must  
continue to run without change with later versions of the ICU shared  
library.


Here are the requirements for enabling binary compatibility for ICU4C:

Applications must use only APIs that are marked as stable.

Applications must use only plain C APIs, never C++.

ICU must be built with function renaming disabled.

Applications must be built using an ICU that was configured for binary  
compatibility.


Use ICU version 3.0 or later.




___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-31 Thread Alastair Houghton

On 31 Jul 2009, at 15:30, Jean-Daniel Dupas wrote:


Le 31 juil. 09 à 11:30, Alastair Houghton a écrit :

As far as I understood, the original reason for not providing the  
headers was that the C++ ABI was not stable and so a program linked  
against ICU on one version of Mac OS X might not work on a  
subsequent version (assuming it went and used the C++ API).


This is also true for the C API.


Well not quite.  The C *API* might be non-binary-compatible if you  
built ICU the wrong way, and some sections of it are certainly marked  
as stable/unstable.  But I was specifically talking about the Mac OS X  
C++ *ABI*, which IIRC was still in flux when this question first  
appeared.


Anyway, we're in danger of drifting off topic here.

Kind regards,

Alastair.

--
http://alastairs-place.net



___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-31 Thread John Engelhart
On Thu, Jul 30, 2009 at 8:04 PM, BareFeet list.develo...@tandb.com.auwrote:

 Hi John and all,

  You might want to look at AGRegex which is very compact (one class) and
 which uses PCRE:

 http://colloquy.info/project/browser/trunk/Frameworks/AGRegex


 Of note, Colloquy appears to have switched to RegexKitLite itself:

 http://svn.colloquy.info/project/changeset/4301


Just to be clear, I'm the author of RegexKitLite (and RegexKit.framework).
 I just like to be up front about that so you can apply whatever amount of
bias filtering you want to any claims or statements I make.


 http://svn.colloquy.info/project/changeset/4301

 I did notice that log entry, but thought it was never acted upon (ie they
 are still using AGRegex).


I can't say I did any kind of exhaustive check, but I was under the
impression that they had definitely switched over.  I even got a bug report
from them.



 RegexKitLite looks promising. It claims to only require you to add the .h
 and .m file to your project and link to the libicucore.dylib library.

 The documentation notes: Warning: Apple does not officially support
 linking to the libicucore.dylib library. In reality, how worried should I
 be about this? I am amazed that Cocoa doesn't provide regex itself. Surely
 Apple must provide or recommend something to do the job.


wrt/ to linking to libicucore.dylib, that's kind of a grey area.  I try to
be as up front as possible about that fact in the documentation.  What
follows is my opinion and carries no official weight.  So far as I know it's
an accurate representation of the facts, and I've tried to keep it
objective:

The shared library that causes the controversy is /usr/lib/libicucore.dylib.
 I've searched the documentation and I could find nothing that explicitly
forbids linking against it, or anything else in /usr/lib.  If one subscribes
to the common unix traditions, the /usr/lib directory is generally
considered fair game for linking against- it is one of the common
locations for a systems publicly available shared libraries.  By placing a
library in /usr/lib, one implicitly declares it publicly available.

The next stumbling block is the need for headers.  A default install of Mac
OS X does not include the ICU headers one would normally need to make use of
the ICU library.  However, the ICU project is an open source project, so one
can (easily?) assemble a suitable set of headers if one is so inclined.  Not
only that, but Apple provides a tar ball of their branch of ICU that is used
to build the binaries that are present on every Mac OS X system.
 Furthermore, that tar balls make file includes a target to install the ICU
headers on your system.  Although a bit convoluted to actually get, Apple
does publicly provide the headers for the ICU library.  See
http://www.opensource.apple.com/tarballs/ICU/ for the tar balls.

After that, the next criteria is whether or not the API is documented.  It's
safe to say that the ICU API is documented, although not by Apple.  Apple
actually refers to the ICU documentation in certain parts of its official
documentation (NSPredicate wrt/ regular expressions and the MATCHES
operator).

So, it comes down to a matter of opinion and a judgement call.  Considering
how easy it is to create a location in the file system that makes it clear
that the shared libraries within are private, I'm of the opinion that the
/usr/lib/libicucore.dylib file is definitely in the public category.  Even
private frameworks have their own slice in
/System/Library/PrivateFrameworks, which makes it pretty clear that the
contents within are off-limits.  Even within public frameworks their is the
PrivateHeaders folder for non-public API information.

Up next is whether or not the lack of headers makes the library private.
 If this was a proprietary library, I'd probably lean towards makes it
private.  However, it's a publicly available open-source project, so it
becomes a little more grey.  The fact that Apple publicly provides
everything needed to build an exact copy of the version of ICU that's
shipped with system, and the ability to install the headers makes it really
grey.  Personally, I'm inclined to say that it's in the not private
category.  I think it's fair to say that the undocumented API clause
doesn't apply.

Finally, I'm not aware of any official decrees that explicitly make
/usr/lib/libicucore.dylib a private API.  What advice that has come from
Apple has been extremely ambiguous, usually with a caveat along the lines of
this may not be officially supported.

From a purely pragmatic perspective, it makes a lot of sense for Apple to
provide the headers and make it an Official, Public API.  First and
foremost is consistency for applications- it removes the need for every
developer to duplicate the work that's already been done, and fill their
.app/ distribution with yet another copy of a (rather large) shared library.
 Another big plus is that from a security point of view- if a problem is
found in the 

Re: NSString and regular expressions

2009-07-30 Thread BareFeet

Hi Rob  all,

On 28/07/2009, at 11:02 AM, Rob Keniger wrote:

You might want to look at AGRegex which is very compact (one class)  
and which uses PCRE:


http://colloquy.info/project/browser/trunk/Frameworks/AGRegex


Thanks for the tip. Have you been able to get this to work?

Do we add the framework or the AGRegex files (and PCRE folder) to our  
own project? I've tried both and can't get it to work. I can't find  
any instructions in the documentation on adding it correctly to your  
own project.


Thanks,
Tom
BareFeet

___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-30 Thread Rob Keniger


On 30/07/2009, at 2:51 PM, BareFeet wrote:

You might want to look at AGRegex which is very compact (one class)  
and which uses PCRE:


http://colloquy.info/project/browser/trunk/Frameworks/AGRegex


Thanks for the tip. Have you been able to get this to work?

Do we add the framework or the AGRegex files (and PCRE folder) to  
our own project? I've tried both and can't get it to work. I can't  
find any instructions in the documentation on adding it correctly to  
your own project.



I personally just compile the files directly into my project.

You need AGRegex.h and AGRegex.m but you should only compile the  
following files from the pcre distribution:


pcre_chartables.c
pcre_compile.c
pcre_exec.c
pcre_fullinfo.c
pcre_get.c
pcre_globals.c
pcre_info.c
pcre_ord2utf8.c
pcre_tables.c
pcre_try_flipped.c
pcre_ucp_searchfuncs.c
pcre_valid_utf8.c
pcre_xclass.c



--
Rob Keniger



___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-30 Thread John Engelhart
On Mon, Jul 27, 2009 at 9:02 PM, Rob Keniger r...@menumachine.com wrote:


 On 28/07/2009, at 10:38 AM, Dave DeLong wrote:

  RegexKit.  Without a doubt.

 http://regexkit.sourceforge.net

 I use it in about 75% of my projects.


 RegexKit is very nice and extremely comprehensive, but it has quite a large
 footprint and is probably overkill for many uses.

 Unfortunately, RegexKit Lite (the stripped-down version) uses the built-in
 ICU library which uses a syntax quite different to the PCRE that most people
 are used to.

 You might want to look at AGRegex which is very compact (one class) and
 which uses PCRE:

 http://colloquy.info/project/browser/trunk/Frameworks/AGRegex


Of note, Colloquy appears to have switched to RegexKitLite itself:

http://svn.colloquy.info/project/changeset/4301
___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-30 Thread BareFeet

Hi Rob,


I personally just compile the files directly into my project.

You need AGRegex.h and AGRegex.m but you should only compile the  
following files from the pcre distribution:


pcre_chartables.c
pcre_compile.c
pcre_exec.c
pcre_fullinfo.c
pcre_get.c
pcre_globals.c
pcre_info.c
pcre_ord2utf8.c
pcre_tables.c
pcre_try_flipped.c
pcre_ucp_searchfuncs.c
pcre_valid_utf8.c
pcre_xclass.c


Thanks. I tried that, but get 436 fails during compile, starting with  
pcre.h: No such file or directory.


So I copied pcre.h across to my project too but then get more errors  
starting with pcre_internal.h No such file or directory.


If I add all the header files, I still get compile errors, starting  
with:


pcre_ucp_searchfuncs.c:48:54:
  error: ucptable.c: No such file or directory

So I copied ucptable.c but I get the error:

ucptable.c:4:
  error: expected '=', ',', ';', 'asm' or '__attribute__' before  
'ucp_table'


Can you please clue me in as to how to get AGRegex to work?

Thanks,
Tom
BareFeet

___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-30 Thread BareFeet

Hi John and all,

You might want to look at AGRegex which is very compact (one class)  
and which uses PCRE:


http://colloquy.info/project/browser/trunk/Frameworks/AGRegex



Of note, Colloquy appears to have switched to RegexKitLite itself:

http://svn.colloquy.info/project/changeset/4301


I did notice that log entry, but thought it was never acted upon (ie  
they are still using AGRegex).


RegexKitLite looks promising. It claims to only require you to add  
the .h and .m file to your project and link to the libicucore.dylib  
library.


The documentation notes: Warning: Apple does not officially support  
linking to the libicucore.dylib library. In reality, how worried  
should I be about this? I am amazed that Cocoa doesn't provide regex  
itself. Surely Apple must provide or recommend something to do the job.


As quoted earlier:

Unfortunately, RegexKit Lite (the stripped-down version) uses the  
built-in ICU library which uses a syntax quite different to the  
PCRE that most people are used to.


At first glance through the ICU Syntax documentation included with  
RegexKitLite, it appears the same as what I'm used to. At least it  
supports \s for whitespace, \w for words, (?=...) for look ahead. I  
did, however, discover:



Single Quote
Two single quotes represent a single quote, either inside or outside  
single quotes. Text within single quotes is not interpreted in any  
way, except for two adjacent single quotes. It is taken as literal  
text— special characters become non-special. These quoting  
conventions for ICU character classes differ from those of Perl or  
Java. In those environments, single quotes have no special meaning,  
and are treated like any other literal character.


I guess I can deal with that.

Has anyone discovered any other issues (or had successes) dealing with  
ICU syntax in RegexKitLite and RegexKitLite in general?


Thanks,
Tom
BareFeet

___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-30 Thread Charles Srstka

On Jul 30, 2009, at 7:04 PM, BareFeet wrote:

RegexKitLite looks promising. It claims to only require you to add  
the .h and .m file to your project and link to the libicucore.dylib  
library.


The documentation notes: Warning: Apple does not officially support  
linking to the libicucore.dylib library. In reality, how worried  
should I be about this? I am amazed that Cocoa doesn't provide regex  
itself. Surely Apple must provide or recommend something to do the  
job.


ICU is an open-source project, so if you're concerned about the Apple- 
supplied one disappearing, you can just go download the latest  
sources, compile it yourself, and then either link it statically or  
include the dylib inside your bundle.


http://site.icu-project.org/

Charles
___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-28 Thread Alastair Houghton

On 28 Jul 2009, at 02:02, Rob Keniger wrote:


On 28/07/2009, at 10:38 AM, Dave DeLong wrote:


RegexKit.  Without a doubt.

http://regexkit.sourceforge.net

I use it in about 75% of my projects.


RegexKit is very nice and extremely comprehensive, but it has quite  
a large footprint and is probably overkill for many uses.


Unfortunately, RegexKit Lite (the stripped-down version) uses the  
built-in ICU library which uses a syntax quite different to the PCRE  
that most people are used to.


Since the goal in both ICU and PCRE is to be broadly compatible with  
Perl regular expression syntax, I think it's an exaggeration to say  
that the syntax is quite different.  There are things in PCRE that  
aren't supported in ICU, and vice-versa.  And neither of them support  
everything that is implemented in Perl (partly because you'd have to  
actually *implement* Perl to do it).


Kind regards,

Alastair.

--
http://alastairs-place.net



___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-28 Thread jonat...@mugginsoft.com


On 28 Jul 2009, at 10:26, Alastair Houghton wrote:


On 28 Jul 2009, at 02:02, Rob Keniger wrote:


On 28/07/2009, at 10:38 AM, Dave DeLong wrote:


RegexKit.  Without a doubt.

http://regexkit.sourceforge.net

I use it in about 75% of my projects.


RegexKit is very nice and extremely comprehensive, but it has quite  
a large footprint and is probably overkill for many uses.


Unfortunately, RegexKit Lite (the stripped-down version) uses the  
built-in ICU library which uses a syntax quite different to the  
PCRE that most people are used to.


Since the goal in both ICU and PCRE is to be broadly compatible with  
Perl regular expression syntax, I think it's an exaggeration to say  
that the syntax is quite different.  There are things in PCRE that  
aren't supported in ICU, and vice-versa.  And neither of them  
support everything that is implemented in Perl (partly because you'd  
have to actually *implement* Perl to do it).



NSPredicate anyone?
The MATCHES operator uses ICU's Regular Expressions package.
http://developer.apple.com/documentation/Cocoa/Conceptual/Predicates/Articles/pUsing.html#/ 
/apple_ref/doc/uid/TP40001794-SW9

Kind regards,

Alastair.

--
http://alastairs-place.net



___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/jonathan%40mugginsoft.com

This email sent to jonat...@mugginsoft.com


Jonathan Mitchell

Developer
http://www.mugginsoft.com





___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-27 Thread Dave DeLong

RegexKit.  Without a doubt.

http://regexkit.sourceforge.net

I use it in about 75% of my projects.

Dave

On Jul 27, 2009, at 6:37 PM, Rick Mann wrote:

I need to do some regex searches on NSStrings, and use capturing  
groups. Looking online I found some discussions from 2003 referring  
to MOKit, which hasn't been touched since 2005, and seems to include  
a lot of stuff I don't care about. Other references to agkit suggest  
it doesn't support unicode.


All of this makes me wonder if there's not a better support in this  
day and age for regex? I'm surprised not to find it in NSString.


Recommendations on what I should use? Thanks!


--
Rick

___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/davedelong%40me.com

This email sent to davedel...@me.com


___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: NSString and regular expressions

2009-07-27 Thread Rob Keniger


On 28/07/2009, at 10:38 AM, Dave DeLong wrote:


RegexKit.  Without a doubt.

http://regexkit.sourceforge.net

I use it in about 75% of my projects.


RegexKit is very nice and extremely comprehensive, but it has quite a  
large footprint and is probably overkill for many uses.


Unfortunately, RegexKit Lite (the stripped-down version) uses the  
built-in ICU library which uses a syntax quite different to the PCRE  
that most people are used to.


You might want to look at AGRegex which is very compact (one class)  
and which uses PCRE:


http://colloquy.info/project/browser/trunk/Frameworks/AGRegex

--
Rob Keniger



___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com