(?<!\d)\d+\.\d+ should match the numbers at the end of the lines and yet it won’t. What am I doing wrong?

  • tetris11@lemmy.ml
    link
    fedilink
    arrow-up
    9
    ·
    edit-2
    13 days ago

    To put this into easier form:

    (nota digit) (1ormore digit) (literal dot) (1ormore digit)

    As far as I can see in that text, none of them end with "5.4” or "3.6” or "0.0”, so no your regex wont work

    Maybe change the middle " \d+" into “\d*” , or surround the “\d+\.” with a question mark group?

    • a14o@feddit.org
      link
      fedilink
      arrow-up
      5
      ·
      13 days ago

      surround the “\d+.” with a question mark group?

      If you’re expecting decimals, that’s the preferred solution:

      (?<!\d)(\d+\.)?\d+(?=\s*$)

      Otherwise you could do simply

      (?<!\d)\d+(?=\s*$)

      I added the lookahead (?=\s*$) to match digits at the end of the line only with possible trailing spaces.

    • sabreW4K3OP
      link
      fedilink
      arrow-up
      3
      ·
      13 days ago

      Thank you. Every time someone shows me something regarding regex, I feel like I’m getting lessons from a deity.

      You actually helped me out lots. I switched it to (?<!\d)\.*\d{1}+ thanks to your comment and it kinda did the job, so thank you.

  • bizdelnick@lemmy.ml
    link
    fedilink
    arrow-up
    5
    ·
    edit-2
    13 days ago

    What am I doing wrong?

    Not specifying the regex engine you use, first of all. Second, also describe what you mean by numbers that you want to match.

    • sabreW4K3OP
      link
      fedilink
      arrow-up
      1
      ·
      13 days ago

      Not specifying the regex engine you use

      Sorry, I have no clue.

      Second, also describe what you mean by numbers that you want to match.

      So you see in the screenshot, there’s a random number at the end of some of the lines, I’m trying to match that.

      • bizdelnick@lemmy.ml
        link
        fedilink
        arrow-up
        2
        ·
        10 days ago

        Sorry, I have no clue.

        What do you use to apply your regex? Programming language, library, command line tool etc.

        there’s a random number at the end of some of the lines, I’m trying to match that.

        Is it decimal? One digit or multiple digits? Natural, rational?

        • sabreW4K3OP
          link
          fedilink
          arrow-up
          1
          ·
          9 days ago

          Sorry it took so long to get back to you, I was trying to find a type of some sort.

          The app offers this https://github.com/gedoor/legado/blob/master/app/src/main/assets/web/help/md/regexHelp.md Which I hope you find fruitful as an indication.

          What do you use to apply your regex?

          An ePub Reader called Legado

          Is it decimal? One digit or multiple digits? Natural, rational?

          In the screenshot above, you can see it differs. I feel like I’m not doing your kindness justice with my sparse information, sorry! 🥺

      • bizdelnick@lemmy.ml
        link
        fedilink
        arrow-up
        2
        ·
        10 days ago

        BTW if you don’t need to capture the number, \d$ should match what you need. If regex syntax supports \d, of course.