вопрос по регуляркам
Здравствуйте.
Начал потихоньку осваивать регэксы. Есть у меня массив (234,357,3,6,96), хочу вытянуть из него последнюю цифру. Сделал: /\(\d*,\d*,\d*,\d*,(\d*)\)/в принципе меня устраивает, работает, но хочется углубиться. По факту массив может быть не из 5, а допустим из 20-30 цифр, не хочется нагромождения. Подскажите пожалуйста как рациональнее заменить? попробовал так: /\([\d*,]{4}?(\d*)\)/но что-то не то.. |
JustCrazy,
alert("(234,357,3,6,96)".replace(/\(.+,(\d+)\)$/,"$1")); |
Цитата:
Цитата:
var s='(234,357,3,6,96)'; var r=/\(\d*,\d*,\d*,\d*,(\d*)\)/; alert(s.replace(r,'')) alert(s.search(r)) Показывает пусто и ноль... :) |
Цитата:
Цитата:
Цитата:
есть что нибудь объединяющее пару символов повторяющихся ? |
Цитата:
|
Цитата:
$url='...'; $data = file_get_contents($url); if (preg_match("/new\sstats\(\d*,\d*,\d*,\d*,\d*,\d*,\d*,\d*,\d*,(\d*),\d*,\d*,(\d*),\d*,\d*,\d*,\d*\)/i",$data,$lists)) { echo $list[1].$list[2]; } else { echo 'cant found'; } |
JustCrazy, применительно к JS. :D
|
Цитата:
все же регулярки они и в африке регулярки.. и вопрос по упрощению остается открытым) |
Цитата:
var s='(234,357,3,6,96)'; var i=3; s=s.substring(1,s.length-1); alert(s.split(',')[3]) |
Цитата:
var s='(234,357,3,6,96)'; var r=/\(\d*,\d*,\d*,\d*,(\d*)\)/; alert(s.replace(r,'$1')) |
Цитата:
Цитата:
|
А для зачем тут вообще регулярки? Найти в цикле нужное количество раз запятую с помощью indexOf и готово.
|
Цитата:
перелопатил мануалы, найти не смог, решил обратиться на форум, не для того чтобы предлагали иные варианты.. по-другому я и сам могу сделать |
Цитата:
|
var s='(234,357,3,6,96)'; var r=s.split(","); alert(parseInt(r[(r.length-1)])) |
var x = '(234,357,3,6,96)'; x = x.slice( 1, -1 ); // не обязательно x = x.slice( x.lastIndexOf( ',' ) - x.length + 1 ); alert( x ); |
всем откликнувшимся спасибо большое, но все же вы немного не так меня поняли...
скачал вчера книжку Джефри Фридла по регуляркам.. в общем вот, то что нужно было, может кому пригодится: (0,0,0,0,0,0,0,0,0,0) из этого вытянуть седьмую цифру: \((\d*,){6}(\d*)(,\d*){3}\) |
var str='(0,0,0,0,0,0,1,2,0,0)'; var arr =str.replace(/[\(\)]/g,'').split(","); alert(arr[6]) alert(arr[7]) |
Deff, :victory:
|
Часовой пояс GMT +3, время: 17:16. |