----boundary-LibPST-iamunique-524643866_-_-
Content-type: text/plain
Douglas G. Danforth a écrit :
>*From:* Greg [mailto:gedwards{([at]})nowhere.xy
>*Sent:* Saturday, March 25, 2006 11:14 AM
>*To:* Blackbox Mailing list (blackbox{([at]})nowhere.xy>*Cc:* 'gedwards1{([at]})nowhere.xy>*Subject:* Regular Expressions tool (help wanted?)
>
>
>Anyone interested in helping with getting good regular-expression support in BB?
>It helps with a lot of common programming tasks having a good regular-expression
>search / replace.
>
>
>PCRE ( http://www.pcre.org/ ) is a cross-platform, very robust, open-source,
>fast, easy to use library for doing regular expression matching on any text. It
>has a Windows binary DLL already for download and use, with example code, a .h
>file, and source.
>
>
>I’d like to create a wrapper in Blackbox for the DLL and start using it all over
>the place.
>
>
>I’d guess it will take 30 minutes of effort IF SOMEONE KNOWS HOW TO WRAP DLLS
>WITH POINTERS TO STRUCTS AND IN/OUT ARRAYS.
>
>
>I’ve done some wrapping of DLLs in the past, but it always took me a while to
>work out the “I need to pass this array of integers/characters into the DLL so
>that the DLL can fill it with stuff” issues, so I’m hoping someone has done this
>recently and remembers clearly the best way to do it.
>
>
>IF SOMEONE CAN HELP WITH THAT, THEN I WILL produce example code that others can
>use to easily integrate search/replace into a BB program.
>
>
>Let me know if you’d be interesting in collaborating.
>
>
>
>-- From the PCRE website:
>
>“PCRE - Perl-compatible regular expressions
>
>The PCRE library is a set of functions that implement regular expression pattern
>matching using the same syntax and semantics as Perl 5.”
>
>
>PCRE is an open
>
>
>I’m about to embark on what will probably be a pretty easy process of wrapping
>the PC
>
>
>
>
>Greg Edwards
>
>CTO, Eyetools Inc.
>
>gedwards1{([at]})nowhere.xy>
>(916) 792 4538
>
>
Doug,
Have you considered the subsystem "CpcRegul"?
http://www.zinnamturm.de/#CpcRegul
It can search any regular expression in texts, and I have been using it
without problems for several years. Its syntax is not exactly the same
as PCRE, but very close. It can also replace found patterns by strings.
CpcEverywhere (
http://www.zinnamturm.de/#CpcEverywhere) uses the same
search engine to do pattern matching in files.
Cheers.
Gérard
--- BlackBox
--- send subject HELP or UNSUBSCRIBE to blackbox{([at]})nowhere.xy
----boundary-LibPST-iamunique-524643866_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzc1xmY2hhcnNldDAgQXJpYWw7fQ0Ke1xmMVxmbW9kZXJuIENvdXJpZXIgTmV3O30NCntcZjJc
Zm5pbFxmY2hhcnNldDIgU3ltYm9sO30NCntcZjNcZm1vZGVyblxmY2hhcnNldDAgQ291cmllciBO
ZXc7fX0NCntcY29sb3J0YmxccmVkMFxncmVlbjBcYmx1ZTA7XHJlZDBcZ3JlZW4wXGJsdWUyNTU7
fQ0KXHVjMVxwYXJkXHBsYWluXGRlZnRhYjM2MCBcZjBcZnMyMCBEb3VnbGFzIEcuIERhbmZvcnRo
IGEgXCdlOWNyaXQgOlxwYXINClxwYXINCj4qRnJvbToqIEdyZWcgW21haWx0bzpnZWR3YXJkc0Bl
eWV0b29scy5jb21dXHBhcg0KPipTZW50OiogU2F0dXJkYXksIE1hcmNoIDI1LCAyMDA2IDExOjE0
IEFNXHBhcg0KPipUbzoqIEJsYWNrYm94IE1haWxpbmcgbGlzdCAoYmxhY2tib3hAb2Jlcm9uLmNo
KVxwYXINCj4qQ2M6KiAnZ2Vkd2FyZHMxQGV5ZXRvb2xzLmNvbSdccGFyDQo+KlN1YmplY3Q6KiBS
ZWd1bGFyIEV4cHJlc3Npb25zIHRvb2wgKGhlbHAgd2FudGVkPylccGFyDQo+XHBhcg0KPiBccGFy
DQo+QW55b25lIGludGVyZXN0ZWQgaW4gaGVscGluZyB3aXRoIGdldHRpbmcgZ29vZCByZWd1bGFy
LWV4cHJlc3Npb24gc3VwcG9ydCBpbiBCQj8gXHBhcg0KPkl0IGhlbHBzIHdpdGggYSBsb3Qgb2Yg
Y29tbW9uIHByb2dyYW1taW5nIHRhc2tzIGhhdmluZyBhIGdvb2QgcmVndWxhci1leHByZXNzaW9u
IFxwYXINCj5zZWFyY2ggLyByZXBsYWNlLlxwYXINCj5ccGFyDQo+IFxwYXINCj5QQ1JFICggaHR0
cDovL3d3dy5wY3JlLm9yZy8gKSBpcyBhIGNyb3NzLXBsYXRmb3JtLCB2ZXJ5IHJvYnVzdCwgb3Bl
bi1zb3VyY2UsIFxwYXINCj5mYXN0LCBlYXN5IHRvIHVzZSBsaWJyYXJ5IGZvciBkb2luZyByZWd1
bGFyIGV4cHJlc3Npb24gbWF0Y2hpbmcgb24gYW55IHRleHQuIEl0IFxwYXINCj5oYXMgYSBXaW5k
b3dzIGJpbmFyeSBETEwgYWxyZWFkeSBmb3IgZG93bmxvYWQgYW5kIHVzZSwgd2l0aCBleGFtcGxl
IGNvZGUsIGEgLmggXHBhcg0KPmZpbGUsIGFuZCBzb3VyY2UuXHBhcg0KPlxwYXINCj4gXHBhcg0K
PklcJzkyZCBsaWtlIHRvIGNyZWF0ZSBhIHdyYXBwZXIgaW4gQmxhY2tib3ggZm9yIHRoZSBETEwg
YW5kIHN0YXJ0IHVzaW5nIGl0IGFsbCBvdmVyIFxwYXINCj50aGUgcGxhY2UuXHBhcg0KPlxwYXIN
Cj4gXHBhcg0KPklcJzkyZCBndWVzcyBpdCB3aWxsIHRha2UgMzAgbWludXRlcyBvZiBlZmZvcnQg
SUYgU09NRU9ORSBLTk9XUyBIT1cgVE8gV1JBUCBETExTIFxwYXINCj5XSVRIIFBPSU5URVJTIFRP
IFNUUlVDVFMgQU5EIElOL09VVCBBUlJBWVMuXHBhcg0KPlxwYXINCj4gXHBhcg0KPklcJzkydmUg
ZG9uZSBzb21lIHdyYXBwaW5nIG9mIERMTHMgaW4gdGhlIHBhc3QsIGJ1dCBpdCBhbHdheXMgdG9v
ayBtZSBhIHdoaWxlIHRvIFxwYXINCj53b3JrIG91dCB0aGUgXCc5M0kgbmVlZCB0byBwYXNzIHRo
aXMgYXJyYXkgb2YgaW50ZWdlcnMvY2hhcmFjdGVycyBpbnRvIHRoZSBETEwgc28gXHBhcg0KPnRo
YXQgdGhlIERMTCBjYW4gZmlsbCBpdCB3aXRoIHN0dWZmXCc5NCBpc3N1ZXMsIHNvIElcJzkybSBo
b3Bpbmcgc29tZW9uZSBoYXMgZG9uZSB0aGlzIFxwYXINCj5yZWNlbnRseSBhbmQgcmVtZW1iZXJz
IGNsZWFybHkgdGhlIGJlc3Qgd2F5IHRvIGRvIGl0LlxwYXINCj5ccGFyDQo+IFxwYXINCj5JRiBT
T01FT05FIENBTiBIRUxQIFdJVEggVEhBVCwgVEhFTiBJIFdJTEwgcHJvZHVjZSBleGFtcGxlIGNv
ZGUgdGhhdCBvdGhlcnMgY2FuIFxwYXINCj51c2UgdG8gZWFzaWx5IGludGVncmF0ZSBzZWFyY2gv
cmVwbGFjZSBpbnRvIGEgQkIgcHJvZ3JhbS5ccGFyDQo+XHBhcg0KPiBccGFyDQo+TGV0IG1lIGtu
b3cgaWYgeW91XCc5MmQgYmUgaW50ZXJlc3RpbmcgaW4gY29sbGFib3JhdGluZy5ccGFyDQo+XHBh
cg0KPiBccGFyDQo+XHBhcg0KPi0tIEZyb20gdGhlIFBDUkUgd2Vic2l0ZTpccGFyDQo+XHBhcg0K
PlwnOTNQQ1JFIC0gUGVybC1jb21wYXRpYmxlIHJlZ3VsYXIgZXhwcmVzc2lvbnNccGFyDQo+XHBh
cg0KPlRoZSBQQ1JFIGxpYnJhcnkgaXMgYSBzZXQgb2YgZnVuY3Rpb25zIHRoYXQgaW1wbGVtZW50
IHJlZ3VsYXIgZXhwcmVzc2lvbiBwYXR0ZXJuIFxwYXINCj5tYXRjaGluZyB1c2luZyB0aGUgc2Ft
ZSBzeW50YXggYW5kIHNlbWFudGljcyBhcyBQZXJsIDUuXCc5NFxwYXINCj5ccGFyDQo+IFxwYXIN
Cj5QQ1JFIGlzIGFuIG9wZW5ccGFyDQo+XHBhcg0KPiBccGFyDQo+SVwnOTJtIGFib3V0IHRvIGVt
YmFyayBvbiB3aGF0IHdpbGwgcHJvYmFibHkgYmUgYSBwcmV0dHkgZWFzeSBwcm9jZXNzIG9mIHdy
YXBwaW5nIFxwYXINCj50aGUgUENccGFyDQo+XHBhcg0KPiBccGFyDQo+IFxwYXINCj5ccGFyDQo+
R3JlZyBFZHdhcmRzXHBhcg0KPlxwYXINCj5DVE8sIEV5ZXRvb2xzIEluYy5ccGFyDQo+XHBhcg0K
PmdlZHdhcmRzMUBleWV0b29scy5jb20gPG1haWx0bzpnZWR3YXJkczFAZXlldG9vbHMuY29tPlxw
YXINCj5ccGFyDQo+KDkxNikgNzkyIDQ1MzhccGFyDQo+ICBccGFyDQo+XHBhcg0KRG91ZyxccGFy
DQpccGFyDQpIYXZlIHlvdSBjb25zaWRlcmVkIHRoZSBzdWJzeXN0ZW0gIkNwY1JlZ3VsIj9ccGFy
DQpccGFyDQpodHRwOi8vd3d3Lnppbm5hbXR1cm0uZGUvI0NwY1JlZ3VsXHBhcg0KXHBhcg0KSXQg
Y2FuIHNlYXJjaCBhbnkgcmVndWxhciBleHByZXNzaW9uIGluIHRleHRzLCBhbmQgSSBoYXZlIGJl
ZW4gdXNpbmcgaXQgXHBhcg0Kd2l0aG91dCBwcm9ibGVtcyBmb3Igc2V2ZXJhbCB5ZWFycy4gSXRz
IHN5bnRheCBpcyBub3QgZXhhY3RseSB0aGUgc2FtZSBccGFyDQphcyBQQ1JFLCBidXQgdmVyeSBj
bG9zZS4gSXQgY2FuIGFsc28gcmVwbGFjZSBmb3VuZCBwYXR0ZXJucyBieSBzdHJpbmdzLiBccGFy
DQpDcGNFdmVyeXdoZXJlIChodHRwOi8vd3d3Lnppbm5hbXR1cm0uZGUvI0NwY0V2ZXJ5d2hlcmUp
IHVzZXMgdGhlIHNhbWUgXHBhcg0Kc2VhcmNoIGVuZ2luZSB0byBkbyBwYXR0ZXJuIG1hdGNoaW5n
IGluIGZpbGVzLlxwYXINClxwYXINCkNoZWVycy5ccGFyDQpccGFyDQpHXCdlOXJhcmRccGFyDQpc
cGFyDQotLS0gQmxhY2tCb3hccGFyDQotLS0gc2VuZCBzdWJqZWN0IEhFTFAgb3IgVU5TVUJTQ1JJ
QkUgdG8gYmxhY2tib3hAb2Jlcm9uLmNofX0A7zolQ8A0SADAdA=
----boundary-LibPST-iamunique-524643866_-_---
Received on Wed Apr 05 2006 - 19:04:34 UTC