我想匹配一个字符串一路到最后,但如果有另一个字符串由空格分隔,那么我只想匹配第一个字符串而不是这个额外的模式这种额外的图案总是使用:匹配字符串,但不匹配特定模式,如果它在Python中
(from
下面是一组字符串的一个例子:
M /trunk
M /trunk/src/chip/GCC/ARMCMx/STM32F4xx/vectors.c
A /trunk/src/hal/include/spdif.h (from /branches/spdif_446/src/hal/include/spdif.h:1078)
M /trunk/src/hal/platforms/STM32/SAI/sai_lld.h
A /trunk/src/hal/platforms/STM32/SPDIF (from /branches/spdif_446/src/hal/platforms/STM32/SPDIF:1078)
A /trunk/src/hal/src/spdif.c (from /branches/spdif_446/src/hal/src/spdif.c:1078)
因此,大家可以看到,其中的几个行有一个额外的字符串后的初始路径显示。显示我的代码提交来自哪个分支。我只想要字符串的开始部分,一直到路径的末尾。我不想要显示它来自哪个分支的部分。我会如何去做这件事?
我想这会工作:
(.+)[\s]
但是,整条生产线相匹配,我不知道为什么。谢谢你的帮助。
怎么样一个简单的'(M?)^(?:(\ S * \())+' – sln
?!。 @sln:前瞻*太贵*而且不需要,请将[** yours **](https://regex101.com/r/cBAOPA/2/)与[** mine **](https ://regex101.com/r/cBAOPA/1/),并且看到你的步骤需要多达10步才能达到相同的结果。 – Jan
@Jan - 对的就是你! – sln