我有一个URL,格式如下:
https://res.cloudinary.com/xyzzz/image/upload/v1673615977/dealetePosts/hokhqmcmmkveqhxtr0nb.jpg
如何从中提取hokhqmcmmkveqhxtr0nb
?所以提取dealetePosts
和.jpg
之间的内容
字符串位置,然后是子字符串可以工作,但有没有更简单的方法?
这就是我到目前为止所拥有的,并且很有效,但这是最好的方法吗?
const publicID = dealPic.substring(
dealPic.indexOf("dealetePosts/") + 13,
dealPic.lastIndexOf(".jpg")
);
3条答案
按热度按时间ckocjqey1#
你可以使用类似split and pop的方法来斜线“/”&“.”字符,如果你总是期待相同类型的url。
dtcbnfnu2#
我使用substring函数和regex来删除任何扩展名(jpg,png等),即使dealetePosts更改为其他名称,它也能正常工作
ax6ht2ek3#
另一个更易于阅读和理解的方法是使用正则表达式匹配要提取的文本。以下代码将匹配“dealetePosts/”和“.jpg”之间的文本,并将其作为第一个捕获的组返回: