Регулярные выражения для Href (весна)? - PullRequest
0 голосов
/ 06 сентября 2018

Я хочу сопоставить идентификатор из href, например:

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

Как я могу пойти по этому поводу?

1 Ответ

0 голосов
/ 06 сентября 2018

Попробуйте использовать https://regexr.com/ (или другие подобные службы), когда вы боретесь с регулярными выражениями.

Это довольно просто:

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

console.log(m[1]);

Здесь я просто смотрю вверх

  • косая черта (сбежала, поэтому она становится \/)
  • захватываягруппа с идентификатором (таким образом, просто заключая в скобки)
  • и искомое выражение определяется как [\w-]+, что означает каждый буквенный символ или тире (\w совпадает с [a-zA-Z0-9_])и длиной не менее 1 символа
  • , затем $ в конце говорит, что id будет последней частью строки (так что вы можете не захотеть этого, если у вас есть параметры запроса в URL)

Если вы знаете точную длину вашего id, вы можете заменить + на {20}.

Не уверены, хотите ли вы сделать это на веб-интерфейсе или бэкэнде,но регулярное выражение должно выглядеть (почти) одинаково в других языках (я использовал JS, поскольку его можно легко присоединить в качестве рабочего примера здесь).

...