使用RegEx进行jQuery动态替换

时间:2011-10-04 13:59:21

标签: jquery regex

如果我有{code}{type="hey"}并且我想用<code><pre class="hey">替换它,我该如何将它绑定到此函数:

$('.wysiwyg textarea').live('keyup',function(){

    wysiwyg_val = $(this).val();

    wysiwyg_val = wysiwyg_val
    .replace(/\n/g, "<br />")
    .replace(/\n\n+/g, '<br /><br />')
    .replace(/\{code\}/g,"<pre><code>")
    .replace(/\{\/code\}/g,"</code></pre>")
    .replace(/\{code}/g,"</code></pre>")
    .replace(/\{img\}/g,'<img src="http://localhost/CI_DEVBASE/img/logo.png" width="150" height="50"')
    .replace(/\{\/img\}/g,'/>');


    $('.wysiwyg-preview').html(wysiwyg_val);

  });

请注意,我只是将{code}替换为<code><pre>。我想在{code}{type="$somenthing"}<code><pre class="$somenthing">的情况下替换,其中$somenthing是动态参数,而不是静态参数。

1 个答案:

答案 0 :(得分:1)

尝试将此行添加到替换语句的末尾 -

.replace(/\{code\}\{type="(.*)"\}/g, '<code><pre class="$1">');