У меня есть эта строка: comment_1234
Я хочу извлечь 1234
из строки. Как я могу это сделать?
Обновление: Я не могу получить ни один из ваших ответов для работы ... Есть ли проблема с моим кодом? Предупреждение никогда не вызывается:
var nameValue = dojo.query('#Comments .Comment:last-child > a[name]').attr('name');
alert('name value: ' + nameValue); // comment_1234
var commentId = nameValue.split("_")[1];
// var commentId = nameValue.match(/\d+/)[0];
// var commentId = nameValue.match(/^comment_(\d+)/)[1];
alert('comment id: ' + commentId); //never gets called. Why?
Решение:
Я понял свою проблему ... по какой-то причине она выглядит как строка, но на самом деле это не строка, поэтому теперь я преобразую nameValue
в строку, и она работает.
var nameValue = dojo.query('#Comments .Comment:last-child > a[name]').attr('name'); //comment_1234
var string = String(nameValue); //cast nameValue as a string
var id = string.match(/^comment_(\d+)/)[1]; //1234