Вы хотите использовать группу захвата , например:
var match = "images/abc.png".match(/images\/([^.]+)\.png/);
var text = match && match[1];
Вы можете сделать это в одну строку, только если вы знаете , что она будет соответствовать;в противном случае вы получите исключение.
На самом деле, я мог бы обмануть и использовать оператор запятой, чтобы получить его в одной строке:
var match = "images/abc.png".match(/images\/([^.]+)\.png/), text = match && match[1];
... но я думаю, что это сильно проигрывает
Полезно читать страницу MDC с регулярными выражениями .