Строка без пробелов должна разбиваться на основе шаблона - PullRequest
0 голосов
/ 20 марта 2019

У меня есть строка

number234-456-132
abc235-456-456
bhjklsds:456-133-456

Я хочу разбить строки как

number 234-456-132
abc 235-456-456
bhjklsds: 456-133-456

Нет шаблона для текста, который соединяется с номером.

Ответы [ 2 ]

1 голос
/ 20 марта 2019

Я бы попытался явно сопоставить три группы цифр в конце и включить что-нибудь еще в первую строку:

for string in strings:
    match = re.match("(.*)(\d{3}-\d{3}-\d{3})$", string)
    print([match[1], match[2]])
1 голос
/ 20 марта 2019

попробуйте это регулярное выражение -> '([^0-9]*)(.*)'

>>> import re
>>> def foo(text):
...  result = re.search('([^0-9]*)(.*)', text)
...  return " ".join(result.groups())
... 
>>> foo("number234-456-132")
'number 234-456-132'
>>> foo("abc235-456-456")
'abc 235-456-456'
>>> foo("bhjklsds:456-133-456")
'bhjklsds: 456-133-456'
>>> 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...