Регулярность для расстояния в метрической системе
Вопрос
я хочу RegEx
соответствовать значениям расстояния в метрической системе. Эта регулярность должна соответствовать 12m
, 100cm
,1km
игнорируя белое пространство
Решение
И расширить ответ Павла, чтобы включить значения десятичных знаков ...
(\d+).?(\d*)\s*(m|cm|km)
Другие советы
Попробуй это:
(?:0|[1-9]\d*)\s*(?:da|[yzafpnμmcdhkMGTPEZY])?m
Поскольку вы не указывали именно то, что вы хотели, я использовал ваши примеры, чтобы получить, что вы хотите найти целочисленное значение, за которым следует дополнительные пробелы, за которым последовал спецификатор устройства CM, M или KM. Итак - это самый простой пример этого.
/(\d+)\s*(m|cm|km)/
Первые скобки фиксируют номер, а затем пропускают chars 0-ny Mane Chars, прежде чем захватить ваши необходимые подразделения во втором наборе скобков.
Как вы можете видеть в других ответах, вы можете выйти за рамки этого, чтобы забрать десятичные значения, а также захватить более широкое количество префиксов устройства SI.