Loading ...
Sorry, an error occurred while loading the content.

Re: List of Regex Matches

Expand Messages
  • Tony Mechelynck
    ... Hm. Adding + after l is the right thing to do, I think; it matches any number of consecutive noninitial lowercase in one fell swoop. AFAIK, with this
    Message 1 of 4 , Jun 30, 2009
    View Source
    • 0 Attachment
      On 01/07/09 00:03, Nathan Neff wrote:
      >
      >> :echo substitute(string, '\.\zs\A\|\a\zs\l', '', 'g')
      >
      > Thanks Tony. I ended up modifying it a bit -- I put the + quantifier
      > after the \l, and I removed the \. because it was keeping the _ and .
      > chars in the
      > result.
      >
      > Here's my tweaks to your suggestion:
      >
      > let string="FruitCompanyController_foo_bar_quk.groovy"
      > echo substitute(string, '\a\zs\l\+\|\zs\A', '', 'g')
      >>> FCCfbqg
      >
      > Thanks again!
      >
      > --Nate

      Hm.

      Adding \+ after \l is the right thing to do, I think; it matches any
      number of consecutive noninitial lowercase in one fell swoop.

      AFAIK, with this regexp the second \zs (after \|) isn't necessary. Then
      adding a * after the \A may (or may not - it's a guess) make it work
      faster on strings containing many clustered nonalpha.

      If your string starts with a nonalphabetic character, you'll remove it
      (because you removed the . I put to try and test for it) but maybe you
      don't care about that. If you do, you may want to study
      :help E59
      :help /zero-width
      and what they resend to.

      Also, please be aware of the fact that _bottom_-posting is preferred on
      this list.


      Best regards,
      Tony.
      --
      What sane person could live in this world and not be crazy?
      -- Ursula K. LeGuin

      --~--~---------~--~----~------------~-------~--~----~
      You received this message from the "vim_use" maillist.
      For more information, visit http://www.vim.org/maillist.php
      -~----------~----~----~----~------~----~------~--~---
    Your message has been successfully submitted and would be delivered to recipients shortly.