Como inserir um caractere de nova linha antes de uma (s) palavra (s) que contém dois pontos

Cladius

Eu tenho uma string que é toda uma linha como:

Breed: Pembroke Welsh Corgi Price: $2,200 Gender: Female Nickname: Koko 
Age: 9 Weeks Old Color/Markings: yellow and white Size at Maturity: 
Medium Availability Date: 09/30/2018 Shipping Area: Worldwide Payment 
Method: Money Order/Cashier's Check, Paypal, Credit Cards, Cash

E eu quero que o resultado seja:

Breed: Pembroke Welsh Corgi
Price: $2,200
Gender: Female
Nickname: Koko

etc. etc. Basicamente, insira um \nantes da nova categoria que termina em dois pontos.

Obrigado pelas respostas antecipadamente!

Ben Schmidt

Como Austin apontou acima, algumas das categorias são frases em vez de palavras. Não há uma maneira simples de separar algo como "Tamanho amarelo e branco na maturidade" para descobrir para onde deve ir a nova linha. Portanto, você precisa ter uma lista exaustiva de todas as categorias possíveis com antecedência. Se você puder fornecer isso, há muitas maneiras de fazer isso. Aqui está um simples:

s = "Breed: Pembroke Welsh Corgi Price: $2,200 Gender: Female Nickname: Koko Age: 9 Weeks Old Color Markings: yellow and white Size at Maturity: Medium Availability Date: 09/30/2018 Shipping Area: Worldwide Payment Method: Money Order/Cashier's Check, Paypal, Credit Cards, Cash"

categories = ['Breed', 'Price', 'Gender:', 'Nickname', 'Age', 'Color/Markings',
              'Size at Maturity', 'Availability Date', 'Shipping Area',
              'Payment Method']

for cat in categories:
    s = s.replace(cat + ':', '\n' + cat + ':')

print(s)

Porém, se possível, seria muito melhor corrigir o que quer que esteja gerando esses dados para que tenha delimitadores apropriados em primeiro lugar.

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

PowerShell - como inserir um caractere de dois pontos antes da primeira barra invertida em uma string?

Como posso inserir uma nova linha após cada caractere no script de shell?

Obtendo a (s) palavra (s) de uma string que contém um caractere específico. (Como # ou @ por exemplo, um planejador de postagem)

Atualize uma coluna de texto que contém um caractere de nova linha '\ n'

Como adicionar um caractere "\ t" em uma string antes do caractere de nova linha "\ n"

Como acrescentar uma linha em um arquivo ou antes de encontrar o caractere de nova linha?

Como inserir um caractere de nova linha ("\ n") no SQLite?

Como eu criaria uma nova linha em um documento de texto após a enésima palavra?

Como eu criaria uma nova linha em um documento de texto após a enésima palavra?

Como inserir um caractere dentro de uma palavra, mantendo a caixa

Como inserir uma nova linha antes de um intervalo de texto formatado específico no Microsft Word?

Como inserir um campo que contém um valor modificado de uma linha

Como inserir um caractere em uma lista antes de um caractere específico do final da lista e o mesmo após o último caractere?

Remover três pontos antes ou depois de uma nova linha

Em Java, como faço para que este método countLines conte uma linha sem um caractere de nova linha?

Por que \ n às vezes age como um espaço em javascript em vez de um caractere de nova linha?

Como inserir caractere (s) antes de uma correspondência específica ou substituir uma correspondência com um caractere seguido pela mesma correspondência usando RegEx em Python?

Script de shell que termina com uma linha que contém apenas dois pontos?

Ruby on Rails | Como inserir uma nova linha na tabela do banco de dados que possui três chaves estrangeiras

No Vim, como inserir uma palavra após a correspondência de regex no início da próxima linha

No Vim, como inserir uma palavra após a correspondência de regex no início da próxima linha

inserir o caractere de nova linha em uma string

Como inserir uma linha após uma linha que tem uma caixa de seleção marcada

Como adicionar nova linha após a ocorrência de uma palavra específica

Como faço para inserir uma string após uma determinada string, mas antes da próxima ocorrência de um caractere específico?

Como inserir um valor que contém símbolos de porcentagem?

O que significa dois pontos após uma tupla, mas antes de outro tipo, dentro de uma assinatura de método?

Como remover um caractere específico e uma palavra após esse caractere de uma string em Python?

Como inserir uma sílaba antes de uma única vogal