Href(弹簧)的正则表达式?

时间:2018-09-06 15:19:07

标签: angular typescript spring-boot elasticsearch qregularexpression

我想匹配href中的ID,例如:

"href": "http://192.168.1.1:8081/employee/AWWqP-lmDrLdMDDa7yc2"

我该怎么办?

1 个答案:

答案 0 :(得分:0)

遇到正则表达式时,请尝试使用https://regexr.com/(或其他类似服务)。

这很简单:

const url = 'http://192.168.1.1:8081/employee/AWWqP-lmDrLdMDDa7yc2';
const m = url.match(/\/([\w-]+)$/);

console.log(m[1]);

这里我只是在查找

  • 斜杠(转义为\/
  • 使用ID捕获组(因此只需将其包装在括号中)
  • 将我要查找的表达式定义为[\w-]+,表示每个字母数字或破折号(\w[a-zA-Z0-9_]相同),并且至少长1个字符
  • 然后$最后说id将是字符串的最后一部分(因此,如果您可以在URL中使用查询参数,则可能不希望这样做)

如果您知道id的确切长度,则可以将+替换为{20}

不确定是要在前端还是在后端进行此操作,但是regexp在其他语言中应该(几乎)相同(我使用JS,因为在这里可以很容易地将其附加为工作示例)。