SORU
15 Mart 2010, PAZARTESİ


JavaScript - string düzenli geribaşvuruların

JavaScript: böyle başlıyor

var str = "123 $test 123";
str = str.replace(/(\$)([a-z] )/gi, "$2");

Bu (oldukça) aptal yerine geçecek "$test""". test ile Ama hayal başka bir değer döndüren bir işlev içine $2 sonuç dizesi geçmek istiyorum. Ben bunu denedim, ama dize almak yerine"", "$2". test Bir şekilde bunu başarmak için var mı?

// Instead of getting "$2" passed into somefunc, I want "test"
// (i.e. the result of the regex)
str = str.replace(/(\$)([a-z] )/gi, somefunc("$2"));

CEVAP
15 Mart 2010, PAZARTESİ


Bu gibi:

str.replace(regex, function(match, $1, $2, offset, original) { return someFunc($2); })

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Chip Johnson

    Chip Johnson

    30 AĞUSTOS 2007
  • The Slow Mo Guys

    The Slow Mo

    15 AĞUSTOS 2010
  • Vladimir Jenko

    Vladimir Jen

    1 Mart 2010