[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: On refining regexp by adding exceptions systematically

From: Christopher Browne
Subject: Re: On refining regexp by adding exceptions systematically
Date: 5 Oct 2002 19:46:11 GMT

Oops! (gnuist) was seen spray-painting on a wall:
> Here is regular expression in emacs lisp that initially seems to work
> for the job:
> [A-Z][A-Z][A-Z][0-9]+

> After running it on a number of uses, I find that there is an
> exception to it, namely PJP89898.  Rather than rehashing the code
> after having forgotten it and reworking my regexp expression (every
> time I find an exception) in some convoluted way, is there a
> systematic way to add an exception or a series of exceptions to the
> regexp? I am sure that there are a number of ways to do this and
> each has its merits.

> I am using this regexp in two ways in a different program.  In the
> first one (looking-at regexp) so that it assumes that cursor is on
> it. In the second one (search-forward-regexp regexp) in a narrowed
> region so that one is trying to find if there is one.  It seems to
> me that it is a little tricky to do this. Perhaps an example code
> would help with exception implemented for searching on a line.

If your specification sucks, "adding exceptions" is just going to make
the code "suck worse" as you find more of them.

Maybe you need to do the design work up front to determine the /real/
specification for whatever it was that you were searching for.

And perhaps you should set up followup to your /favorite/ newsgroup?
This isn't really a Unix question, nor is it a Lisp question, so
discussion probably shouldn't continue in these newsgroups.
(reverse (concatenate 'string "moc.enworbbc@" "sirhc"))
"Necessity is the mother of invention" is a silly proverb.  "Necessity
is the  mother of  futile dodges"  is much closer  to the  truth.  The
basis of growth of modern  invention is science, and science is almost
wholly the outgrowth of pleasurable intellectual curiosity.
-- Alfred N. Whitehead

reply via email to

[Prev in Thread] Current Thread [Next in Thread]