正则表达式-仅在满足两个条件时选择$

时间:2018-07-26 17:42:00

标签: regex

条件:

  • 它必须在<tag></tag>之间
  • 在这些标签之间,它必须同时具有<b>{1}

<b>{1}的放置是随机的(但始终在2个标签之间)。

如果满足条件,则仅选择<b>

我为此花了半天时间,无法正常工作,哈哈。正在使用regex101。

这是示例:

<tag><b>{1}test</tag> 
<tag><b>test</tag>

据我所知,大致的概念是:

(?! ( (condition1)|(condition2) ) (select word) )

必须满足条件1和条件2才能进行选择(选择字)。有什么问题吗??

编辑:实用示例,来自游戏文件:

<Entry>
      <DefaultText>&lt;line-height=100%&gt;{0}% Damage and Healing, {1} &lt;link="glossary://GlossaryEntry_Fortitude"&gt;&lt;b&gt;Fortitude&lt;/b&gt;&lt;space=0.7em&gt;&lt;#f9d968&gt;&lt;sprite="Inline" name="cs_fortitude" tint=1&gt;&lt;/color&gt;&lt;/link&gt;&lt;/line-height&gt;</DefaultText>

</Entry>

1 个答案:

答案 0 :(得分:0)

检查下一个正则表达式<tag>(?=(?:(?!<\/?tag>).)*?<b>)(?=(?:(?!<\/?tag>).)*?\{1})(?:(?!<\/?tag>).)*<\/tag>

要在线尝试正则表达式并获取说明,请单击here