0

正規表現を使用して特定の文字列の先頭に文字を追加しようとしていますが、非常に新しく、探しているものの答えが見つからないようです。andのような文字列があり、数値文字列の先頭にa を追加したいと考えていBelow 1499ます。コードを見つける必要があるのは次のとおりです (ところで、これらはすべて、refinement_price_text のクラスを持つ div 内のテキスト文字です)。Above 1900$

$('.refinement_price_text').each(function(){
    console.log($(this).text().match(/\d{1,5}/g));
});

コンソールに正常にログアウトします。それらは、1 つの項目を持つ配列としてログに記録されます。ただし、今はドル記号を前に付ける方法がわかりません。prepend() を試しましたが、うまくいきません。match() を変数として設定しようとしましたが、うまくいきませんでした。もともと replace() を使用したかったのですが、現在の値を維持し、先頭にドル記号を追加する必要があり、正規表現を維持するために $(this) に相当するものが何であるかを知りませんでした同じ値。

これが理にかなっているのかどうか教えてください。これを簡単に行う機能が必要だと思いますか?ご協力いただきありがとうございます!

4

2 に答える 2

0

投稿したような単純な文字列の場合、先読み正規表現と置換が機能します。基本的に、正規表現に文字列の最初の数字を見つけて(ただし、それを消費しないでください)、ドル記号を前に付けるように指示します。同じ文字列に複数の数値がある場合は、正規表現を微調整する必要があります。

var s = "before 1900"
s=s.replace(/(?=[0-9])/,"$");
console.log(s);

複数出現をサポートするように変更されました。空白が前にある数字を探し、その数字の前にドル記号を追加します。

プランカーの例

var s = "before 1900 and 2130 and (1900)"
s=s.replace(/\s(?=\d)/g," $");
console.log(s);
于 2013-10-01T18:23:15.360 に答える