相关疑难解决方法(0)

正则表达式最后一次出现?


我需要的最后一个反斜杠后,我试图抓住最后一部分\Web_ERP_Assistant(带\)

我的想法是:

C:\Projects\Ensure_Solution\Assistance\App_WebReferences\Web_ERP_WebService\Web_ERP_Assistant


\\.+?(?!\\)      //  I know there is something with negative look -ahead `(?!\\)`
Run Code Online (Sandbox Code Playgroud)

但我找不到它.

[Regexer Demo]

regex path

96
推荐指数
6
解决办法
15万
查看次数

在PHP中拆分字符串并获取最后一部分

我需要在PHP中用" - "拆分字符串并获取最后一部分.

所以从这个:

ABC-123-XYZ-789

我希望得到

"789"

这是我提出的代码:

substr(strrchr($urlId, '-'), 1)
Run Code Online (Sandbox Code Playgroud)

哪个工作正常,除了:

如果我的输入字符串不包含任何" - ",我必须得到整个字符串,如:

123

我需要回来

123

它需要尽可能快.任何帮助表示赞赏!

php string

38
推荐指数
5
解决办法
10万
查看次数

如何在最后一次出现子字符串之前获取字符串?

我想在给定子字符串的最后一次出现之前获取字符串。

我的字符串是,

路径 = D:/me/vol101/Prod/cent/2019_04_23_01/image/AVEN_000_3400_img_pic_p1001-1010/pxy/AVEN_000_3400_img-mp4_to_MOV_v1001-1010.mov

我的子串,1001-1010会出现两次。我想要的只是在最后一次出现之前获取字符串。

注意:我的子字符串是动态的,填充不同,但只有数字。

我想要,

D:/me/vol101/Prod/cent/2019_04_23_01/image/AVEN_000_3400_img_pic_p1001-1010/pxy/AVEN_000_3400_img-mp4_to_MOV_v

我已经使用正则表达式和切片,

>>> p = 'D:/me/vol101/Prod/cent/2019_04_23_01/image/AVEN_000_3400_img_pic_p1001-1010/pxy/AVEN_000_3400_img-mp4_to_MOV_v1001-1010.mov'
>>> q = re.findall("\d*-\d*",p)
>>> q[-1].join(p.split(q[-1])[:-1])
'D:/me/vol101/Prod/cent/2019_04_23_01/image/AVEN_000_3400_img_pic_p1001-1010/pxy/AVEN_000_3400_img-mp4_to_MOV_v'
>>> 
Run Code Online (Sandbox Code Playgroud)

纯粹使用正则表达式有什么更好的方法吗?

请注意我已经尝试了很多,例如:

  1. 正则表达式匹配所有内容,直到最后一次出现 /
  2. 正则表达式 最后一次出现?

我通过使用正则表达式和切片得到了答案,但我想通过单独使用正则表达式来实现..

python regex python-3.x

3
推荐指数
2
解决办法
1136
查看次数

标签 统计

regex ×2

path ×1

php ×1

python ×1

python-3.x ×1

string ×1