How can i use if else validation in regex












1















I know how to validate a constant string with regex, but I'm really having trouble finding out how to do the following: I want a regex to validate the string edv_ after that I want the validation to be dependent:




  • if the user inputs for example edv_2, only 6 or 7 can be the next character. So only edv_26 or edv_27 would be valid

  • if the user would enter edv_3 then only edv_32 or edv_39 would be valid


Ive tried searching on the internet watched several youtube tutorials. None of them seem to handle this kind of thing. It's always only 1 constant thing they want to validate.



/[e][d][v][_][A]/ig


This matches the first part (edv_digit) but I have no clue how I should continue with the if else conditions.










share|improve this question





























    1















    I know how to validate a constant string with regex, but I'm really having trouble finding out how to do the following: I want a regex to validate the string edv_ after that I want the validation to be dependent:




    • if the user inputs for example edv_2, only 6 or 7 can be the next character. So only edv_26 or edv_27 would be valid

    • if the user would enter edv_3 then only edv_32 or edv_39 would be valid


    Ive tried searching on the internet watched several youtube tutorials. None of them seem to handle this kind of thing. It's always only 1 constant thing they want to validate.



    /[e][d][v][_][A]/ig


    This matches the first part (edv_digit) but I have no clue how I should continue with the if else conditions.










    share|improve this question



























      1












      1








      1








      I know how to validate a constant string with regex, but I'm really having trouble finding out how to do the following: I want a regex to validate the string edv_ after that I want the validation to be dependent:




      • if the user inputs for example edv_2, only 6 or 7 can be the next character. So only edv_26 or edv_27 would be valid

      • if the user would enter edv_3 then only edv_32 or edv_39 would be valid


      Ive tried searching on the internet watched several youtube tutorials. None of them seem to handle this kind of thing. It's always only 1 constant thing they want to validate.



      /[e][d][v][_][A]/ig


      This matches the first part (edv_digit) but I have no clue how I should continue with the if else conditions.










      share|improve this question
















      I know how to validate a constant string with regex, but I'm really having trouble finding out how to do the following: I want a regex to validate the string edv_ after that I want the validation to be dependent:




      • if the user inputs for example edv_2, only 6 or 7 can be the next character. So only edv_26 or edv_27 would be valid

      • if the user would enter edv_3 then only edv_32 or edv_39 would be valid


      Ive tried searching on the internet watched several youtube tutorials. None of them seem to handle this kind of thing. It's always only 1 constant thing they want to validate.



      /[e][d][v][_][A]/ig


      This matches the first part (edv_digit) but I have no clue how I should continue with the if else conditions.







      regex






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Dec 29 '18 at 10:22









      Frederic Klein

      2,66631533




      2,66631533










      asked Dec 28 '18 at 17:59









      MajesticOlMajesticOl

      61




      61
























          1 Answer
          1






          active

          oldest

          votes


















          2














          You basically need alternations for handling your various cases. You can use this regex which matches as per your criteria.



          bedv_(?:2[67]|3[29])b


          Here boundaries ensure it doesn't match partial text like abcedv_26 or edv_26111 and it starts matching with edv_ then looks for either 2 followed by either 6 or 7 or looks for 3 followed by 2 or 9.



          Live Demo






          share|improve this answer

























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53962511%2fhow-can-i-use-if-else-validation-in-regex%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            2














            You basically need alternations for handling your various cases. You can use this regex which matches as per your criteria.



            bedv_(?:2[67]|3[29])b


            Here boundaries ensure it doesn't match partial text like abcedv_26 or edv_26111 and it starts matching with edv_ then looks for either 2 followed by either 6 or 7 or looks for 3 followed by 2 or 9.



            Live Demo






            share|improve this answer






























              2














              You basically need alternations for handling your various cases. You can use this regex which matches as per your criteria.



              bedv_(?:2[67]|3[29])b


              Here boundaries ensure it doesn't match partial text like abcedv_26 or edv_26111 and it starts matching with edv_ then looks for either 2 followed by either 6 or 7 or looks for 3 followed by 2 or 9.



              Live Demo






              share|improve this answer




























                2












                2








                2







                You basically need alternations for handling your various cases. You can use this regex which matches as per your criteria.



                bedv_(?:2[67]|3[29])b


                Here boundaries ensure it doesn't match partial text like abcedv_26 or edv_26111 and it starts matching with edv_ then looks for either 2 followed by either 6 or 7 or looks for 3 followed by 2 or 9.



                Live Demo






                share|improve this answer















                You basically need alternations for handling your various cases. You can use this regex which matches as per your criteria.



                bedv_(?:2[67]|3[29])b


                Here boundaries ensure it doesn't match partial text like abcedv_26 or edv_26111 and it starts matching with edv_ then looks for either 2 followed by either 6 or 7 or looks for 3 followed by 2 or 9.



                Live Demo







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Dec 28 '18 at 18:10

























                answered Dec 28 '18 at 18:03









                Pushpesh Kumar RajwanshiPushpesh Kumar Rajwanshi

                5,7622827




                5,7622827






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53962511%2fhow-can-i-use-if-else-validation-in-regex%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Monofisismo

                    Angular Downloading a file using contenturl with Basic Authentication

                    Olmecas