Следующее выражение будет соответствовать всем вашим примерам:
/(^[\d\.]+)/gm
Флаги gm
необходимы, если вы хотите запустить выражение для нескольких строк и получить все совпадения.
Следует отметить, что выражение будет соответствовать любым периодам, предшествующим или сразу после числа, поэтому приведенные ниже примеры также будут совпадать:
.1.2 The numbers here will be matched
1.2. These numbers will also be matched
Если это проблема, я рекомендую удалить эти периоды с помощью replaceFirst()
, substring()
или что-то подобное.