SORU
7 EKİM 2008, Salı


JavaScript: büyük / küçük harf duyarlı arama

JavaScript çalışan iki dizeleri büyük / küçük harf duyarlı bir arama almak için çalışıyorum.

Normalde böyle olacağını:

var string="Stackoverflow is the BEST";
var result= string.search(/best/i);
alert(result);

/i bayrak büyük / küçük harf duyarlı olacaktır.

Ama ikinci bir dize aramak gerek; bayrak olmadan mükemmel çalışır:

var string="Stackoverflow is the BEST";
var searchstring="best";
var result= string.search(searchstring);
alert(result);

Eğer değişkeni ne için aranacak katar için arama yukarıdaki örnek için değil /i bayrak eklersem "" (örnek çalışma): . aranacak katar

var string="Stackoverflow is the BEST";
var searchstring="best";
var result= string.search(/searchstring/i);
alert(result);

Bunu nasıl başarabilir?

CEVAP
7 EKİM 2008, Salı


Evet, .match yerine .search kullanın. Sonuç .match Ara kendisini eşleştirilen gerçek bir dize döndürür, ama hala bir boolean değeri olarak kullanılabilir.

var string = "Stackoverflow is the BEST";
var result = string.match(/best/i);
// result == 'BEST';

if (result){
    alert('Matched');
}

Böyle bir düzenli ifade kullanarak muhtemelen JavaScript ile bunu yapmak için en belirgin tidiest ama aklınızda tutunbir düzenli ifade, ve böylece normal ifade meta içerebilir. Eğer programınızda dizeden başka bir yerde (örneğin, kullanıcı girişi), veya isterseniz önlemek için kaçmak zorunda bir sürü meta, o zaman sen muhtemelen en iyi kullanan indexOf: bunun gibi

matchString = 'best';
// If the match string is coming from user input you could do
// matchString = userInput.toLowerCase() here.

if (string.toLowerCase().indexOf(matchString) != -1){
    alert('Matched');
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 0TACTICAL0HIPPY0

    0TACTICAL0HI

    30 EYLÜL 2012
  • PhoneBuff

    PhoneBuff

    10 HAZİRAN 2011
  • Sam Kear

    Sam Kear

    14 Temmuz 2007