TypoScript applicationContext condition with wildcards or sub-contexts not possible











up vote
0
down vote

favorite












Since TYPO3 9.5 LTS suggests to use the Symfony Expression Language for TypoScript conditions.



I have some troubles migrating them:



Old Syntax:



// Matches any applicationContext with a rootContext of "Production", for example "Production/Live" or "Production/Staging":
[applicationContext = Development*]

// Matches any applicationContext starting with "Production/Dev"
[applicationContext = /^Production/Dev/]


to the new expression language:



I've tried the following without success:



[applicationContext == "/^Development/Docker/"]

[applicationContext == "Development*"]

[applicationContext == "Development/*"]




I didn't found any examples. I'm not sure, if the tests for conditions are already based on the expression language. (https://review.typo3.org/#/c/57787/)



Would be nice if someone has an advice how to use the feature to add conditions like before










share|improve this question




















  • 1




    Does The Expression Syntax help?
    – Mathias Brodala
    Nov 22 at 11:38






  • 1




    Thanks @MathiasBrodala for the hint. With you info, the following can be done: [applicationContext matches "/^Development/"] which matches when the actual Context is Development/Docker
    – Josef Glatz
    Nov 22 at 12:14

















up vote
0
down vote

favorite












Since TYPO3 9.5 LTS suggests to use the Symfony Expression Language for TypoScript conditions.



I have some troubles migrating them:



Old Syntax:



// Matches any applicationContext with a rootContext of "Production", for example "Production/Live" or "Production/Staging":
[applicationContext = Development*]

// Matches any applicationContext starting with "Production/Dev"
[applicationContext = /^Production/Dev/]


to the new expression language:



I've tried the following without success:



[applicationContext == "/^Development/Docker/"]

[applicationContext == "Development*"]

[applicationContext == "Development/*"]




I didn't found any examples. I'm not sure, if the tests for conditions are already based on the expression language. (https://review.typo3.org/#/c/57787/)



Would be nice if someone has an advice how to use the feature to add conditions like before










share|improve this question




















  • 1




    Does The Expression Syntax help?
    – Mathias Brodala
    Nov 22 at 11:38






  • 1




    Thanks @MathiasBrodala for the hint. With you info, the following can be done: [applicationContext matches "/^Development/"] which matches when the actual Context is Development/Docker
    – Josef Glatz
    Nov 22 at 12:14















up vote
0
down vote

favorite









up vote
0
down vote

favorite











Since TYPO3 9.5 LTS suggests to use the Symfony Expression Language for TypoScript conditions.



I have some troubles migrating them:



Old Syntax:



// Matches any applicationContext with a rootContext of "Production", for example "Production/Live" or "Production/Staging":
[applicationContext = Development*]

// Matches any applicationContext starting with "Production/Dev"
[applicationContext = /^Production/Dev/]


to the new expression language:



I've tried the following without success:



[applicationContext == "/^Development/Docker/"]

[applicationContext == "Development*"]

[applicationContext == "Development/*"]




I didn't found any examples. I'm not sure, if the tests for conditions are already based on the expression language. (https://review.typo3.org/#/c/57787/)



Would be nice if someone has an advice how to use the feature to add conditions like before










share|improve this question















Since TYPO3 9.5 LTS suggests to use the Symfony Expression Language for TypoScript conditions.



I have some troubles migrating them:



Old Syntax:



// Matches any applicationContext with a rootContext of "Production", for example "Production/Live" or "Production/Staging":
[applicationContext = Development*]

// Matches any applicationContext starting with "Production/Dev"
[applicationContext = /^Production/Dev/]


to the new expression language:



I've tried the following without success:



[applicationContext == "/^Development/Docker/"]

[applicationContext == "Development*"]

[applicationContext == "Development/*"]




I didn't found any examples. I'm not sure, if the tests for conditions are already based on the expression language. (https://review.typo3.org/#/c/57787/)



Would be nice if someone has an advice how to use the feature to add conditions like before







typo3 typoscript typo3-9.x






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Dec 5 at 5:34

























asked Nov 22 at 11:28









Josef Glatz

17111




17111








  • 1




    Does The Expression Syntax help?
    – Mathias Brodala
    Nov 22 at 11:38






  • 1




    Thanks @MathiasBrodala for the hint. With you info, the following can be done: [applicationContext matches "/^Development/"] which matches when the actual Context is Development/Docker
    – Josef Glatz
    Nov 22 at 12:14
















  • 1




    Does The Expression Syntax help?
    – Mathias Brodala
    Nov 22 at 11:38






  • 1




    Thanks @MathiasBrodala for the hint. With you info, the following can be done: [applicationContext matches "/^Development/"] which matches when the actual Context is Development/Docker
    – Josef Glatz
    Nov 22 at 12:14










1




1




Does The Expression Syntax help?
– Mathias Brodala
Nov 22 at 11:38




Does The Expression Syntax help?
– Mathias Brodala
Nov 22 at 11:38




1




1




Thanks @MathiasBrodala for the hint. With you info, the following can be done: [applicationContext matches "/^Development/"] which matches when the actual Context is Development/Docker
– Josef Glatz
Nov 22 at 12:14






Thanks @MathiasBrodala for the hint. With you info, the following can be done: [applicationContext matches "/^Development/"] which matches when the actual Context is Development/Docker
– Josef Glatz
Nov 22 at 12:14














2 Answers
2






active

oldest

votes

















up vote
0
down vote



accepted










You need to use the matches comparison operator of the Symfony Expression Language. This way you can use regular expressions for partial matches:



[applicationContext matches "/^Development/"]


This will match any Development context.






share|improve this answer




























    up vote
    0
    down vote













    The following condition matches any applicationContext starting with "Production/Dev"



    [applicationContext matches '/^Production\\\\/Dev/']



    Why so many backslashes? A backslash () must be escaped by 4 backslashes (\\) in a string and 8 backslashes (\\\\) in a regex in the Symfony Expression Language



    (Symfony Expression Language acts as the base for TypoScript conditions since TYPO3 9 LTS)







    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',
      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%2f53429969%2ftyposcript-applicationcontext-condition-with-wildcards-or-sub-contexts-not-possi%23new-answer', 'question_page');
      }
      );

      Post as a guest















      Required, but never shown

























      2 Answers
      2






      active

      oldest

      votes








      2 Answers
      2






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes








      up vote
      0
      down vote



      accepted










      You need to use the matches comparison operator of the Symfony Expression Language. This way you can use regular expressions for partial matches:



      [applicationContext matches "/^Development/"]


      This will match any Development context.






      share|improve this answer

























        up vote
        0
        down vote



        accepted










        You need to use the matches comparison operator of the Symfony Expression Language. This way you can use regular expressions for partial matches:



        [applicationContext matches "/^Development/"]


        This will match any Development context.






        share|improve this answer























          up vote
          0
          down vote



          accepted







          up vote
          0
          down vote



          accepted






          You need to use the matches comparison operator of the Symfony Expression Language. This way you can use regular expressions for partial matches:



          [applicationContext matches "/^Development/"]


          This will match any Development context.






          share|improve this answer












          You need to use the matches comparison operator of the Symfony Expression Language. This way you can use regular expressions for partial matches:



          [applicationContext matches "/^Development/"]


          This will match any Development context.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Nov 22 at 12:23









          Mathias Brodala

          2,382215




          2,382215
























              up vote
              0
              down vote













              The following condition matches any applicationContext starting with "Production/Dev"



              [applicationContext matches '/^Production\\\\/Dev/']



              Why so many backslashes? A backslash () must be escaped by 4 backslashes (\\) in a string and 8 backslashes (\\\\) in a regex in the Symfony Expression Language



              (Symfony Expression Language acts as the base for TypoScript conditions since TYPO3 9 LTS)







              share|improve this answer



























                up vote
                0
                down vote













                The following condition matches any applicationContext starting with "Production/Dev"



                [applicationContext matches '/^Production\\\\/Dev/']



                Why so many backslashes? A backslash () must be escaped by 4 backslashes (\\) in a string and 8 backslashes (\\\\) in a regex in the Symfony Expression Language



                (Symfony Expression Language acts as the base for TypoScript conditions since TYPO3 9 LTS)







                share|improve this answer

























                  up vote
                  0
                  down vote










                  up vote
                  0
                  down vote









                  The following condition matches any applicationContext starting with "Production/Dev"



                  [applicationContext matches '/^Production\\\\/Dev/']



                  Why so many backslashes? A backslash () must be escaped by 4 backslashes (\\) in a string and 8 backslashes (\\\\) in a regex in the Symfony Expression Language



                  (Symfony Expression Language acts as the base for TypoScript conditions since TYPO3 9 LTS)







                  share|improve this answer














                  The following condition matches any applicationContext starting with "Production/Dev"



                  [applicationContext matches '/^Production\\\\/Dev/']



                  Why so many backslashes? A backslash () must be escaped by 4 backslashes (\\) in a string and 8 backslashes (\\\\) in a regex in the Symfony Expression Language



                  (Symfony Expression Language acts as the base for TypoScript conditions since TYPO3 9 LTS)








                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited Nov 22 at 13:18

























                  answered Nov 22 at 12:33









                  Josef Glatz

                  17111




                  17111






























                      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.





                      Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                      Please pay close attention to the following guidance:


                      • 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%2f53429969%2ftyposcript-applicationcontext-condition-with-wildcards-or-sub-contexts-not-possi%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

                      A CLEAN and SIMPLE way to add appendices to Table of Contents and bookmarks

                      Calculate evaluation metrics using cross_val_predict sklearn

                      Insert data from modal to MySQL (multiple modal on website)