发布
社区首页 >问答首页 >匹配python中的字符串模式(包括数字和':')

匹配python中的字符串模式(包括数字和':')
EN

Stack Overflow用户
提问于 2017-10-13 08:57:05
回答 3查看 21关注 0票数 0

我在这里询问如何在python中将特定类型的字符串提取为长字符串。

我的字符串=‘开始1: 1.300454结束’

我不知道如何在我的字符串样本中只提取"1: 1.300454“。

EN

回答 3

Stack Overflow用户

发布于 2017-10-13 09:03:18

只需使用regular expressions即可。

代码语言:javascript
代码运行次数:0
复制
import re

pattern = re.compile(r'^start (.*) end$')

my_string = 'start 1: 1.300454 end'

extract = pattern.match(my_string).group(1)
print(extract)

打印

代码语言:javascript
代码运行次数:0
复制
1: 1.300454
票数 0
EN

Stack Overflow用户

发布于 2017-10-13 09:07:14

您可以拆分“end”子串,取第一部分,然后拆分"start:“,取最后一部分:

代码语言:javascript
代码运行次数:0
复制
my_string = 'start 1: 1.300454 end'
extract = my_string.split(' end', 1)[0].split("start ", 1)[-1]
print(extract)
票数 0
EN

Stack Overflow用户

发布于 2017-10-13 09:29:02

使用字符串切片。例如您的案例。

代码语言:javascript
代码运行次数:0
复制
In [7]: def extract_content(string, prefix='start ', suffix=' end'):
   ...:     return string[len(prefix):-len(suffix)]
   ...: 

In [8]: string
Out[8]: 'start 1: 1.300454 end'

In [9]: extract_content(string)
Out[9]: '1: 1.300454'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46720987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档