如何将字符串返回到某个字符?
def get_header(s):
'''(str) -> str
Return the start of the given string upto and including
</head>.'''
return (s.split('</head>')[0])
这就是我所做的,但是,我不知道如何在“”&lt;“/ heads”&gt;“”之前得到所有内容并将其包括在内。
例如:
s ="hello python world </head> , i'm a beginner "
get_header(s)
这将返回
"hello python world "<"/head">" #without the quotient marks around the <
答案 0 :(得分:1)
您的代码应该有效,但不会包含"</head>"
,所以只需在最后添加:
def get_header(s):
'''(str) -> str
Return the start of the given string upto and including
</head>.'''
return s.split('</head>')[0] + "</head>"
答案 1 :(得分:0)
对于与{&#34;正则表达式匹配的Python re
模块,这将是一件相当容易的事情。 (或正则表达式)到字符串。
以下是如何使用它来做你想做的事情:
import re
def get_header(s):
"""(str) -> str
Return the start of the given string upto and including </head>.
"""
matches = re.search(r".*</head>", s)
return matches.group(0) if matches else None
s = "hello python world </head> , i'm a beginner "
print(get_header(s)) # -> hello python world </head>
答案 2 :(得分:0)
more_itertools
是实施split_after
工具的第三方库。通过以下方式安装:
> pip install more_itertools
<强>鉴于强>
import more_itertools as mit
s = "hello python world </head> , i'm a beginner "
<强>代码强>
pred = lambda x: x == "</head>"
" ".join(next(mit.split_after(s.split(), pred)))
# 'hello python world </head>'
字符串由空格分成&#34;单词&#34;。在适合谓词的任何单词之后拆分完整字符串。第一个结果是连在一起的。