2011-02-08 15 views

答えて

13

使用この式:

var str = 'I like [dogs], [cats], and [birds]'; 
alert(str.replace(/\[(.+?)\]/g, '<a href="#">$1</a>')); 
  • \[(.+?)\]は、リテラル]を一致させるために、なまけ何も一致してキャプチャするために、リテラル[を要求します。取り込まれたものは<a>タグで囲まれたものに置き換えてください。

  • g修飾子は、グローバル置換を意味します。つまり、最初の一致ではなく、すべての一致を見つけて置換します。

jsFiddle preview

+0

@Trufa:私はそう遠くに言います。 – BoltClock

+0

これは "?"の理由で、コメントはなくなりました! – Trufa

+0

すばらしい解決策。完璧に動作します。 – Shpigford

6

それは単純な文字列置換します。

function tagIt(source) 
{ 
    return source.replace('[', '<a href="#">').replace(']', '</a>'); 
} 
関連する問題