строка выглядит следующим образомJavascript/Jquery - Получить номер строки из
"blabla blabla-5 amount-10 blabla direction-left"
Как я могу получить номер только после того, как "amount-"
, и текст только после "direction-"
?
строка выглядит следующим образомJavascript/Jquery - Получить номер строки из
"blabla blabla-5 amount-10 blabla direction-left"
Как я могу получить номер только после того, как "amount-"
, и текст только после "direction-"
?
regular expressions Это использует и exec method:
var s = "blabla blabla-5 amount-10 blabla direction-left";
var amount = parseInt(/amount-(\d+)/.exec(s)[1], 10);
var direction = /direction-([^\s]+)/.exec(s)[1];
код вызовет ошибку, если количество или направление отсутствует; если это возможно, проверьте, не является ли результат exec не нулем перед индексированием в массив, который должен быть возвращен.
спасибо, что это было :) – Alex
Вы можете использовать регулярное выражение, как описано by w3schools. Подсказка:
str = "blabla blabla-5 amount-10 blabla direction-left"
alert(str.match(/amount-([0-9]+)/));
Otherwize вы можете просто хотеть все числа, поэтому используйте шаблон [0-9] +. str.match вернет массив.
Uh-oh http://w3fools.com/ –
Это позволит получить все номера, разделенных кома:
var str = "10 is smaller than 11 but greater then 9"; var pattern = /[0-9]+/g; var matches = str.match(pattern);
После выполнения, строка matches
будет иметь значения "10,11,9"
Если вы просто ищете таял первое появление, картина будет /[0-9]+/
- который будет возвращать 10
(Там нет необходимости для JQuery)
Это самый эффективный способ. Благодаря! –
Fol опустив какое правило? Извлечь все числа? Каков желаемый результат, массив? –
нет, просто число/строка после этих параметров. вывод должен быть строкой – Alex