• BassTurd@lemmy.world
    link
    fedilink
    arrow-up
    7
    ·
    13 hours ago

    How do you think that would look? Regex isn’t particularly complicated, just a bit to remember. I’m trying to picture how you would represent a regex expression in a higher level language. I think one of its biggest benefits is the ability to shove so much information into a random looking string. I suppose you could write functions like, startswith, endswith, alpha(4), or something like that, but in the end, is that better?

      • BassTurd@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        38 minutes ago

        The “something” is where the regex goes. For simple cases contains by itself does just fine, but for almost anything kind of dynamic input, it’s going to not be capable of what regex does.

    • frezik@midwest.social
      link
      fedilink
      arrow-up
      7
      ·
      13 hours ago

      People have unironically done that. No, it isn’t better. The fundamental mental model is the same.

    • Skullgrid@lemmy.world
      link
      fedilink
      arrow-up
      8
      arrow-down
      1
      ·
      13 hours ago

      I suppose you could write functions like, startswith, endswith, alpha(4), or something like that,

      yes.

      but in the end, is that better?

      YES.

      startswith('text');
      lengthMustBe(5);
      onlyContain(CHARSETS.ALPHANUMERICS); 
      endswith('text');
      

      is much more legible than []],[.<{}>,]‘text’[[]]][][)()(a-z,0-9){}{><}<>{}‘text’{}][][

      • BassTurd@lemmy.world
        link
        fedilink
        arrow-up
        11
        ·
        12 hours ago

        Assuming “text” in your example is a placeholder for a 5 digit alpha string, it can be written like this in regex: /[a-zA-Z0-9]{5}/

        If ”text" is literal, then your statement is impossible.

        I think that when it gets to more complex expressions like a phone number with country code that accepts different formats, the verbosity of a higher level language will be more confusing, or at least more difficult to take in quickly.