我有以下网址结构:
http://domain.com/images/1/10/104/104901/7.jpg
如何才能将此与正则表达式匹配,直到最后一个/
斜杠才能返回此字符串?
http://domain.com/images/1/10/104/104901/
感谢您的帮助!
更正:我使用Javascript。
答案 0 :(得分:2)
这取决于语言。
但对于Python,您可以使用.+/
但这只是一个快速测试(我不能保证它的稳健性)。
Here is it in action (regex101)
稍作修改就可以让它通过the regular expression site you were using。
.+\/
或者,如果您不想使用正则表达式,您可以只镜像字符串并找到其他人建议的第一个斜杠。
答案 1 :(得分:2)
在Javascript中,您可以使用贪婪匹配来匹配到最后/
:
/^.+\//
或者您可以在最后/
之后更换零件:
var s = 'http://domain.com/images/1/10/104/104901/7.jpg'
var r = s.replace(/[^/]+$/, '')
//=> "http://domain.com/images/1/10/104/104901/"
答案 2 :(得分:2)
不使用正则表达式的ES6替代方法是使用asUnsafeCsvReader
和String.prototype.substring
:
String.prototype.lastIndexOf
那么,你为什么要用它?
myString.substring(0, myString.lastIndexOf('/'))
在我的计算机上使用Firefox进行基准测试,但结果在所有地方都应该类似。