用于提取 URL 不同部分的正则表达式

regular expression to extract different parts of a url

本文关键字:正则表达式 同部 提取 URL 用于      更新时间:2023-09-26

我有一组具有相似模式的不同网址,我需要使用 javascript 中的正则表达式从每个网址中提取以下内容。是否可以在一个命令中提取不同的部分?

  1. 无人居住地
  2. 文档类型
  3. 文档名称(在本例中为演示)
  4. 图像/缩略图
  5. ?大小=768 或图像/缩略图或图像/背景
  6. 缩略图或背景

    /

    document/b5bacc1e-7b55-4263-97a5-ca7015e367e0/word/demo/con;version=99/images/thumbnail?size=768

    /

    document/b5bacc1e-7b55-4263-97a5-ca7015e367e0/excel/demo/con;version=99/images/thumbnail?size=100

    /

    document/b5bacc1e-7b55-4263-97a5-ca7015e367e0/powerpoint/demo/con;version=99/images/thumbnail

    /

    document/b5bacc1e-7b55-4263-97a5-ca7015e367e0/word/demo/con;version=99/images/background?size=100

    /

    document/b5bacc1e-7b55-4263-97a5-ca7015e367e0/excel/demo/con;version=99/images/background

我的尝试。

url.match(/images'/(.*)/);

假设结构将始终如您给出的示例,您可以使用:

matches = url.match(/(([a-f0-9]+'-)+[a-f0-9]+)'/(.*?)'/(.*?)'/.*(images'/([^'?]*).*$)/);
result = {
    "UUID": matches[1],
    "documentType": matches[3],
    "documentName": matches[4],
    "image": matches[5],
    "imageType": matches[6]
}