Відповіді:
Як я це зробив:
// 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 javascriptщо в цьому випадку не вдасться.
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, як substring()і indexOf()підтримуються як Mozilla і IE. Однак зауважте, що substr () може не підтримуватися в попередніх версіях деяких браузерів (наприклад, Netscape / Opera).
Ваше повідомлення вказує на те, що ви вже знаєте, як це зробити за допомогою, substring()і indexOf()тому я не розміщую зразок коду.
Ви можете зробити це за допомогою вбудованого RegExp (візерунок [, прапори]) Заводські позначення у js, як це:
RegExp(/-(.*)/).exec("sometext-20202")[1]
у наведеному вище коді exec функція поверне масив із двома елементами (["-20202", "20202"]), один із дефісом (-20202) та другим без дефісу (20202), слід вибрати другий елемент (індекс 1)
myString.split('-').splice(1).join('-')
myString.split('-').splice(-1).join('-')
Використовуйте регулярний вираз форми: \ w- \ d + де a \ w являє собою слово, а \ d являє собою цифру. Вони не вийдуть з коробки, тому пограйте. Спробуйте це .
sometext-20202-303?