Yanıtlar:
Bunu nasıl yaparım:
// function you can use:
function getSecondPart(str) {
return str.split('-')[1];
}
// use the function:
alert(getSecondPart("sometext-20202"));
get everything after the dash in a string in javascriptBu durumda hangisinin başarısız olacağı sorusu vardı .
Tercih ettiğim bir çözüm:
const str = 'sometext-20202';
const slug = str.split('-').pop();
slugSonucun nerede olurdu
var the_string = "sometext-20202";
var parts = the_string.split('-', 2);
// After calling split(), 'parts' is an array with two elements:
// parts[0] is 'sometext'
// parts[1] is '20202'
var the_text = parts[0];
var the_num = parts[1];
AFAIK, hem substring()ve indexOf()Mozilla ve IE her ikisi tarafından desteklenmektedir. Ancak, substr () işlevinin bazı tarayıcıların önceki sürümlerinde (özellikle Netscape / Opera) desteklenmeyebileceğini unutmayın.
Mesajınız zaten kullanarak nasıl yapacağınızı bildiğinizi gösterir substring()ve indexOf()bu nedenle bir kod örneği göndermiyorum.
Bunu js'de yerleşik RegExp (pattern [, flags]) Factory Notation ile yapabilirsiniz:
RegExp(/-(.*)/).exec("sometext-20202")[1]
yukarıdaki kod exec işlevinde, biri tire (-20202) diğeri tire (20202) olmayan iki elemanlı (["-20202", "20202"]) bir dizi döndürülür, ikinci elemanı (dizin 1) seçmelisiniz
myString.split('-').splice(1).join('-')
myString.split('-').splice(-1).join('-')
Formun normal ifadesini kullanın: \ w- \ d + burada bir \ w bir sözcüğü ve \ d bir rakamı temsil eder. Kutunun dışında çalışmayacaklar, o yüzden oyna. Deneyin bu .
sometext-20202-303mi?