unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: Neon Absentius <absent@sdf.lonestar.org>
Subject: Re: regexp to collapse multiple blank lines into one
Date: Mon, 10 Oct 2005 17:28:45 +0000	[thread overview]
Message-ID: <20051010172845.GX29712@SDF.LONESTAR.ORG> (raw)
In-Reply-To: <die57n$o8s$1@sea.gmane.org>

On Mon, Oct 10, 2005 at 10:35:01AM -0600, Kevin Rodgers wrote:
> B. T. Raven wrote:
> > "Neon Absentius" <absent@sdf.lonestar.org> wrote in message
> > news:mailman.10556.1128865819.20277.help-gnu-emacs@gnu.org...
> >>The following seems to work
> >>
> >>C-M-% \(^C-qC-j\)+ RET \1 RET
> >>
> >>Provided of course that your lines are really blank and do not contain
> >>any spaces, tabs etc.
> >
> > Thanks F.L., P.D., N.A. Neon's solution seems the easiest to me. I need
> > this only because I can't get control chars into the replacement string.
> > The replacement can be a bare RET but you can't replace with less than
> > nothing, i.e. replacing a regexp with nothing and then backspacing to
> > get rid of the blank line.
> 
> Why can't you use the same technique to put a control character into the
> replacement string as Neon suggests for the search string/regexp
> (namely, C-q)?
> 

Actually that also works.  The reason I used "\1" is that I had
already grouped the regexp so it saved me typing.

> I'll admit, I don't understand why that solution works: it appears to
> replace the matched sequence of LFD characters with itself, instead of
> replacing it with just a single LFD character (or nothing at all,
> depending on the desired result).
> 

I don't understand what you don't understand :) My solutions replaces
one or more occurences of a regexp with a single occurence.  Perhaps
you are worried abour efficiency? that if there is a single occurence
I replace it with itself?  In that case you are right.  A better
solution would be better:

C-M-% \(^C-qC-j\)\{2,\} RET \1 RET

-- 
 There is no national science just as there is no national
multiplication table; what is national is no longer science.
         -- Anton Checov

  reply	other threads:[~2005-10-10 17:28 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-09 12:27 repexp to collapse multiple blank lines into one B. T. Raven
2005-10-09 12:59 ` Friedrich Laher
2005-10-09 13:01 ` Peter Dyballa
2005-10-09 13:44 ` Neon Absentius
     [not found] ` <mailman.10556.1128865819.20277.help-gnu-emacs@gnu.org>
2005-10-09 18:36   ` regexp " B. T. Raven
2005-10-10 16:35     ` Kevin Rodgers
2005-10-10 17:28       ` Neon Absentius [this message]
2005-10-10 18:33         ` Kevin Rodgers
2005-10-10 19:06           ` Neon Absentius
     [not found]           ` <mailman.10719.1128971211.20277.help-gnu-emacs@gnu.org>
2005-10-11 22:21             ` Tim X
2005-10-12  1:14               ` Neon Absentius
2005-10-10 18:02       ` Peter Dyballa
2005-10-10 20:59 ` repexp " David Hansen
2005-10-11  2:09   ` Neon Absentius

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20051010172845.GX29712@SDF.LONESTAR.ORG \
    --to=absent@sdf.lonestar.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).