Python中的Regex帮助,用于提取给定b的特定字符串

2024-04-25 08:55:33 发布

您现在位置:Python中文网/ 问答频道 /正文

在下一行中的1008之后和连字符之前提取字符串

ad-1007-1008 qw rt v qw gh-11/11/1008


Tags: 字符串字符ghadrtqw
2条回答

我看到这是你第一次问这样的问题,因此我建议你也像别人在评论中建议的那样快速地通过How to put a good question。你应该在这里的帖子里展示你为解决这个问题所做的努力。这也增加了其他人张贴他们的答案的可能性,以及这可能会节省您的职位从反对票。此外,还应该列出程序的预期输出和实际输出,以使其更加清晰

尽管如此,我想我已经明白你的问题了,尽管它看起来有点宽泛,这是我的解决方案。如果这是你要找的,告诉我

在这两个条件下,您可以在下面的正则表达式中使用正向向前和正向向后查看来捕获所需的文本

(?<=1008).+(?=-)

Demo

Python代码演示

import re

s = 'ad - 1007-1008 qw rt v qw gh - 11/11/1008'
print(re.search(r'(?<=1008).+(?=-)',s).group())

指纹

 qw rt v qw gh

类似地,一个不基于lookaround的解决方案如下所示,您删除lookaround,而是使用group来捕获您想要的文本,使用下面的regex

1008(.+)-

Demo

Python代码演示

import re

s = 'ad - 1007-1008 qw rt v qw gh - 11/11/1008'
print(re.search(r'1008(.+)-',s).group(1))

指纹

 qw rt v qw gh

由于你方没有提供详细的问题,这是我们能得到的最接近的

string="ad - 1007-1008 qw rt v qw gh - 11/11/1008"
print(string[14:-16])

相关问题 更多 >