Взгляните на это регулярное выражение (вы не указали язык, но, учитывая, что он позволяет смотреть вперед и смотреть назад):
(?:^|(?<=\s))\d\.?(?:\d+)?(?=\s)|\*(?=\s)
Демонстрация здесь
Объяснение:
(
?:^ # If start of line
| # or
(?<=\s) # Preceded by a space
)
\d+ # Match digit(s)
\.? # Match dot if present
(?:\d+)? # Match digits following dot without capturing into separate group
(?=\s) # If followed by a space
| # or
\*(?=\s) # Match * if followed by space