Как извлечь число и только одну строку после числа, используя pyhton? - PullRequest
1 голос
/ 05 апреля 2020

У меня есть строка с этим шаблоном test_str = "Abc xyz another_name 123 V aaa". Мне нужно извлечь число и строку после числа после, как значение и его единицу. Как я могу это сделать?
Я могу получить только число с помощью регулярных выражений, но не могу строку после него, которая является единицей.

re.findall(r'[0-9]+', test_str)

расширенный вывод: 123 V

Редактировать:

Additioanly: некоторые единицы могут содержать Sla sh или Back sla sh или числа с запятой, как их получить? Это означает, что некоторые из них могут быть 1.2 или 1,1 и для единиц A/C или DC-W et c

Ответы [ 3 ]

1 голос
/ 05 апреля 2020

Этот шаблон соответствует номерам с , или ., оканчивается единицей с / или - и пробелами между ними.

re.findall(r'[0-9,\.]+\s*[a-zA-Z/\-]*', test_str)
1 голос
/ 05 апреля 2020

Если вы хотите включить в строку также любые другие символы, включая /, - или цифры,
Я думаю, что любой символ, кроме пробелов, будет работать.

re.findall(r'[0-9]+ [^\s]+', test_str)
1 голос
/ 05 апреля 2020

Это может быть то, что вы ищете. Это регулярное выражение будет возвращать числа, за которыми следуют пробел и строка.

re.findall(r'[1-9]+ [a-zA-Z-\/]+', test_str)
...