MLLB
V2EX  ›  问与答

求助一个正则表达式。

  •  
  •   MLLB · Nov 26, 2020 · 2022 views
    This topic created in 2015 days ago, the information mentioned may be changed or developed.
    {extend name="main.html"}
    {block name="menu"}
    <div>
        菜单继承
    </div>
    {/block}
    
    
    {block name="left"}
    <div>
        左边继承
    </div>
    {/block}
    

    如上,我该如何匹配到两个{block}{/block}和他们里面的内容? 我写的\{block name="(.*?)"\}([\s\S]*)\{/block\}会匹配到

    <div>
        菜单继承
    </div>
    {/block}
    
    
    {block name="left"}
    <div>
        左边继承
    </div>
    

    而预期是想匹配

    <div>
        菜单继承
    </div>
    

    <div>
        左边继承
    </div>
    
    4 replies    2020-11-26 15:56:49 +08:00
    Jafee
        1
    Jafee  
       Nov 26, 2020
    看看这个可以吗?

    {block.*}((.|\n)*?){/block}
    linksNoFound
        2
    linksNoFound  
       Nov 26, 2020
    /block ×
    \/block √
    maocat
        3
    maocat  
       Nov 26, 2020
    贪婪模式
    DL9412
        4
    DL9412  
       Nov 26, 2020
    /(?<={block name=".+?"})[\s\S]*?(?={\/block})/g
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5650 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 06:10 · PVG 14:10 · LAX 23:10 · JFK 02:10
    ♥ Do have faith in what you're doing.