我不确定它的标题,但是有一个这样的正则表达式:
preg_replace('#static\/(.*)(\/|\.[a-zA-Z0-9]{2,4})#', 'path=$1$2');
它应该匹配static/path/to/image.jpg
和static/path/to/dir/
。现在我想如果匹配第二个模式(一个目录)所以用前导斜杠替换它,但如果匹配到一个文件名(第一个模式)替换它没有前导斜杠。
例子:
`static/path/to/image.jpg` should be 'path=path/to/image.jpg'
`static/path/to/image.jpg/` should be 'path=path/to/image.jpg'
`static/path/to/dir/` should be 'path=path/to/dir/'
简而言之,$2
如果等于/
最后请求的文件,我想被忽略。以为添加?:
可以解决问题,但我错了。
有没有办法做这样的事情?