Я хотел, чтобы соответствовать определенному шаблону на несколько строк с одним регулярным выражением строкой в (если это возможно):Matching Regex в Python
blah blah (1023 mega lbs) blah blah 1245 tons
blah 1023 kilo tons blah blah 1034 metric tons
blah 1023 feet 345 blah
$100 is a lot of money
Я хочу, чтобы соответствовать номерам (первое вхождение в строке, например) 1023 и его единиц (фунтов, тонн и футов), которые могут следовать за ним после другого слова и хранить это как другую строку. Тем не менее, я должен быть осторожным в размере 100 долларов, потому что это не единица измерения, которую я интересую, а также любые числа, которые могут следовать за первой последовательностью в этой строке.
Мой текущий подход имеет много вложенных if statements
, например, для первой строки у меня есть (не работает): \d*\s(.*)\s\w+
Есть ли лучший способ сделать это?
Я также хочу захватить единицы измерения между числом и фактическим устройством, например '1023 килотонн' –
Ответ работает хорошо, но для меня это сложно.Если бы я не знал, что термины «средний» были бы «(мега | километр | метрикой»), я мог бы вместо этого ('*)' вместо этого? –
Я пробовал его с помощью '(. *)' И он работал (однако, я получил дополнительное пространство перед средним словом. Но когда я попробовал его с '\ w +', он не работал –