1

jqueryのget関数を使ってhtmlファイルを読み込んで、一部の文字を置き換えて結果を表示したい。get 関数を書き、テキストを置き換えることができます。テーブルには多くの行があります。テキストとして表示される行内のすべてのデータ。行はスペースで終了します。「;」を置き換えたい すべての行の文字。ただし、以下のコードは最初の行の文字を置き換えるだけです。すべての「;」を置き換えるにはどうすればよいですか すべての行の文字?

$.ajax({
        url: 'http://url',
            type: 'GET',
            success: function(data) {
            var def = $(data).find('tbody#div.divWord').html();

                $('#def').append('<p><b>' + word + '</b>:' + def + '</p>');

                $("div").each(function() {
                    var text = $(this).text();
                    text = text.replace("  ;", "@");
                    $(this).text(text);
                });

            },
            error: function(data) {
                alert('error'); 
            }
        });
4

3 に答える 3

2

デフォルトでは、Replace 関数は最初の結果のみに一致します。

すべての出現箇所を置き換えたい場合は、正規表現を使用して「グローバル フラグ」を設定する必要があります。

text = text.replace(/ ;/g, "@");

また

text = text.replace(/\s;/g, "@");

where は\s空白文字に一致します。

また

text = text.replace(new RegExp(" ;","g"),"@");
于 2012-06-08T08:37:27.890 に答える
1

グローバル (g) フラグを指定できるように、置換で正規表現を使用します。

text = text.replace(/  ;/g, "@");
于 2012-06-08T08:35:58.737 に答える
1
text = text.replace("  ;", "@"); -> text = text.replace(/  ;/g, "@");
于 2012-06-08T08:35:23.297 に答える