Python:按字符的位置拆分字符串

2022-01-20 00:00:00 python string split find

问题描述

如何按单词的位置拆分字符串?

How can I split a string by the position of a word?

我的数据如下所示:

test = 'annamarypeterson, Guest Relations Manager, responded to this reviewResponded 1 week agoDear LoreLoreLore,Greetings from Amsterdam!We have received your wonderful comments and wanted to thank you for sharing your positive experience with us. We are so thankful that you have selected the Andaz Amsterdam for your special all-girls weekend getaway. Please come and see us again in the near future and let our team pamper you and your girlfriends!!Thanks again!Anna MaryAndaz Amsterdam -Guest RelationsReport response as inappropriateThank you. We appreciate your input.This response is the subjective opinion of the management representative'

我需要这个输出:

responder = 'annamarypeterson, Guest relations Manager'
date = 'Responded 1 week ago'
response = 'Dear ....' #without 'This response is the subjective opinion of the management representative'

我知道 find.() 函数给出了一个单词的位置,我想用这个位置告诉 Python 在哪里拆分它.例如:

I know that the find.() function gives the position of a word, and I want to use this position to tell Python where to split it. For example:

splitat = test.find('ago')+3

我可以使用什么函数来分割整数?split() 函数不适用于 int.

What function can I use to split with an integer? The split() function does not work with an int.


解决方案

您可以使用切片对字符串(和列表)进行此操作:

You can do this with strings (and lists) using slicing:

string = "hello world!"
splitat = 4
left, right = string[:splitat], string[splitat:]

将导致:

>>> left
hell
>>> right
o world!

相关文章