正则表达式,用于在重复文本之前和之后添加括号

时间:2011-12-26 07:45:22

标签: regex notepad++ replace

我有以下行,我想在它之前和之后添加括号:

从:

  

<span class="Footnote">    Matt. xx. 19.</span>

或:

  

<span class="Footnote">    1 Thess. i. 7.</span>

和不同的诗歌参考值...(换句话说,在&gt;和&lt;

之间的任何内容

为:

  

<span class="Footnote"> (Matt. xx. 19.)</span>

依此类推(在它之前和之后需要介于&gt;和&lt;以及add()之间的任何东西..

P.S。我用notepad ++来搜索和替换..

  • 编辑: 前3个回复效果很好,即使对于不同格式的任何东西也是有用的..这很有帮助..但是我在代码中注意到一些不会改变的差异...就好像代码之间有任何标记..喜欢:

    <span class="Footnote">    [See <i>Dan</i>, note 12, p. 26, <i>infra</i>.  “Eternal” ="long.”]</span>

或者如果代码被划分为多行!像

<span class="Footnote">    some text

more text

</span>

提前致谢,

3 个答案:

答案 0 :(得分:1)

找到:

Footnote">\s*([^>]+)\s*<

替换为:

Footnote">(\1)<

答案 1 :(得分:0)

试试这个:(无法测试,我的家人要我在圣诞节早餐时关闭电脑)。

  preg_replace("/Footnote">([^>]*?)</span>/i","[\1]",$subject);

答案 2 :(得分:0)

搜索

<span class="Footnote">\s*([^<>]*?)\s*</span>

并替换为

<span class="Footnote">(\1)</span>

此更改

<span class="Footnote">    Matt. xx. 19.  </span>

<span class="Footnote">(Matt. xx. 19.)</span>