Регулярное выражение для соответствия последнему числу в строке

Мне нужно извлечь последнее число внутри строки. Я пытаюсь сделать это с помощью регулярного выражения и отрицательного просмотра вперед, но это не работает. Это регулярное выражение, которое у меня есть:

\d+(?!\d+)

И это несколько строк, просто чтобы дать вам представление о том, что регулярное выражение должно соответствовать:

ARRAY[123]         matches 123 
ARRAY[123].ITEM[4] matches 4
B:1000             matches 1000
B:1000.10          matches 10

И так далее. Регулярное выражение соответствует числам, но всем им. Я не понимаю, почему отрицательный прогноз не работает. Кто-нибудь хочет объяснить?

34
задан codaddict 31 October 2012 в 14:18
поделиться