開始列:必要文字列内の複数の項目を置き換えるにはどうすればよいですか?
I like [dogs], [cats], and [birds]
最終出力:リンクに括弧付き
I like <a href="#">dogs</a>, <a href="#">cats</a>, and <a href="#">birds</a>
だから、基本的に変更するアイテム。
開始列:必要文字列内の複数の項目を置き換えるにはどうすればよいですか?
I like [dogs], [cats], and [birds]
最終出力:リンクに括弧付き
I like <a href="#">dogs</a>, <a href="#">cats</a>, and <a href="#">birds</a>
だから、基本的に変更するアイテム。
使用この式:
var str = 'I like [dogs], [cats], and [birds]';
alert(str.replace(/\[(.+?)\]/g, '<a href="#">$1</a>'));
\[(.+?)\]
は、リテラル]
を一致させるために、なまけ何も一致してキャプチャするために、リテラル[
を要求します。取り込まれたものは<a>
タグで囲まれたものに置き換えてください。
g
修飾子は、グローバル置換を意味します。つまり、最初の一致ではなく、すべての一致を見つけて置換します。
それは単純な文字列置換します。
function tagIt(source)
{
return source.replace('[', '<a href="#">').replace(']', '</a>');
}
@Trufa:私はそう遠くに言います。 – BoltClock
これは "?"の理由で、コメントはなくなりました! – Trufa
すばらしい解決策。完璧に動作します。 – Shpigford