我一直在试图找到一个命令,这样我就可以得到一个字符串格式的名称,如"some string some string <name> some string"
我设法为这种工作编写了一个代码,但如果有更好的方法,比如一个命令,我将非常高兴。
代码示例:
def findName(str):
indexOne = str.index('<')
indexTwo = str.index('>')
resultList = []
for i in str:
if str.index(i) > indexOne and str.index(i) < indexTwo:
resultList.append(i)
return "".join(resultList)
您可以使用切片来简化您的解决方案:
>>> string = "some string some string <name> some string"
>>> string[string.index("<")+1:string.index(">")]
'name'
或者您可以使用正则表达式和re.search()
:
import re
string = "some string some string <name> some string"
match = re.search("<(.*)>", string)
if match:
print("Found:", match.group(1))
else:
print("Not found")
输出Found: name
如果你有一个类似
的字符串a = 'somestring1 somestring2 somestring3 <Stack Overflow> somestring4'
然后你可以这样做:
import re
words = re.findall(r'<(.*)>',a)
print(words)