Plugin for Perl-Style Regular Expressions
Andrew C. Greenberg
werdna at gate.net
Mon Mar 1 04:43:28 UTC 1999
I have just finished a preliminary version of a plugin
linking Sqeueak to the most recent version of Philip Hazel's
excellent PCRE regular expressions library. (The Python Regular
Expression functionality was derived from an earlier version of this
library.)
The following examples are illustrative:
'a.*c' reSearch: 'xxxxxxxxx'
evaluates to: nil
('a.*c' reSearch: 'xxxaxxxcxxx') match
evaluates to: 'axxxc'
('a(.*)c' reSearch: 'xxxxabbbbcxxx') matchAt: 1
evalutates to: 'bbbb'
('\w+' reGsearch: 'this is a test' ) collect: [:m | m match]
evaluates to:
OrderedCollection ('this' 'is' 'a' 'test' )
'\w+' reGsearch: 'this is a test' sub: [:m | '<', (m match), '>']
evaluates to: '<this> <is> <a> <test>'
To install the plugin:
(1) download and unpack:
ftp://ftp.gate.net/pub/users/werdna/rePluginMacPPC2.3a.sit
(2) Copy the changeset, the plugin and the file entitled
'regular expressions' to your squeak directory.
(3) Start squeak and fileIn the changeset. There is some
documentation in the comments for classes ReMatch and RePattern. A
more complete discussion of the regular expressions used in the
library can be found by executing the following:
(FileStream oldFileNamed: 'Regular Expressions') edit
The published plugin is setup for Mac PPC only at this time. I
believe it should be fairly straightforward to port it to other
platforms, and would be pleased to encourage and assist anyone who
wishes to do so.
I look forward to any and all comments and complaints.
Best,
Andy
More information about the Squeak-dev
mailing list
|