\d+
будет работать в большинстве реализаций.
\d
указывает digit
- если ваша реализация не имеет этого, используйте [0-9]+
вместо.
+
означает one or more of the preceeding pattern
.
edit: Вот пример на python, иллюстрирующий разницу между +
и *
:
>>> import re
>>> r = re.compile('[0-9]*')
>>> print r.findall('asdf')
['', '', '', '', '']
>>> r = re.compile('[0-9]+')
>>> print r.findall('asdf')
[]
>>> print r.findall('abc12345ghi')
['12345']
>>> r = re.compile('^[0-9]+$')
>>> print r.findall('abc12345ghi')
[]