繁体   English   中英

正则表达式匹配两个常量字符串之间的文本

[英]Regex matching text between two constant strings

我有这样的字符串:

Copied file D:\TROLOLO~2\MBF~2\PC\..\..\content\Application Folder\Blabla\FooFoo\bar.bar

我想搭配

"D:\TROLOLO~2\MBF~2\PC\..\..\content\Application Folder"

字符串“复制的文件”和“应用程序文件夹”都是已知的且恒定的。

我该怎么做呢? 还请说明您使用的规则!

试试这个:

^Copied file (.+?Application Folder)

您想要的结果在组1中

^                   : begining of string
Copied file         : litteral
(                   : start grouping
.+?                 : Any char one or more times non greedy
Application Folder  : litteral
)                   : end grouping

怎么样:

 re.findall('(?<=Copied file ).*?Application Folder',s)

不使用正则表达式的替代方法:

>>> text[12:text.index('Application Folder') + len('Application Folder')]
'D:\\TROLOLO~2\\MBF~2\\PC\\..\\..\\content\\Application Folder'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM