0

javascript で '$txt$' を置き換える方法。文字列内の出現箇所をすべて置き換えたい

それは私が試したことです

if (html.indexOf('$txt$') > -1) {
    html = html.replace(/$txt$/ig, '<input type=text></input>');
}

しかし、それは文字列を置き換えません.私の間違いは何ですか.助けてください

4

3 に答える 3

8

$ 記号は正規表現で意味を持つため、エスケープするだけです。に変更します

html = html.replace(/\$txt\$/ig, '<input type="text" />');

そしてそれはうまくいくはずです:)

編集: $ は正規表現の行末を意味します :)

于 2012-04-19T12:42:02.277 に答える
0

html = html.replace(/[$]txt[$]/ig, ''); これを使って

于 2012-04-19T12:46:26.067 に答える
0

正規表現を使用して置き換えており$、行/文字列の末尾に正規表現で予約されている特殊文字です。

リテラル文字にヒットさせるに$は、バックスラッシュを前に付けてエスケープする必要があります。\

if (html.indexOf('$txt$') > -1) {
    html = html.replace(/\$txt\$/ig, '<input type=text></input>');
}
于 2012-04-19T12:48:32.803 に答える