• dsemy@lemm.ee
    link
    fedilink
    English
    arrow-up
    5
    ·
    1 year ago

    I didn’t realize ‘.’ is a number.

    \([0-9]+\.[0-9]\)?[0-9]* is more accurate I think.

    • morrowind@lemmy.ml
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I don’t quite understand yours, why does it need parentheses? And requires the decimal point?

      how about [0-9]+\.?[0-9]*

      • dsemy@lemm.ee
        link
        fedilink
        English
        arrow-up
        4
        ·
        edit-2
        1 year ago

        The parens in my regex group part of the regex, so the following ‘?’ makes the entire group optional.

        Your regex matches (for example) ‘5.’ as a number.

        Mine is also slightly wrong, it matches a blank string as a number. Here’s a better one:

        [0-9]+\(\.[0-9]+\)?

        • morrowind@lemmy.ml
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 year ago

          Your regex matches (for example) ‘5.’ as a number

          Yeah that’s on purpose. That’s often used in sciences to mark significant digits.

          The thing I’m confused by in yours is you’re escaping the parenthesis, so there need to be literal parenthesis in the matching number, or that’s what it showed in the regex checker.

          • dsemy@lemm.ee
            link
            fedilink
            English
            arrow-up
            1
            ·
            1 year ago

            Whether or not you need to escape parens depends on the regex implementation.