• dsemy@lemm.ee
    link
    fedilink
    English
    arrow-up
    5
    ·
    11 months 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
      ·
      11 months 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
        2
        ·
        edit-2
        11 months 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
          ·
          11 months 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
            ·
            11 months ago

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