如何创建正则表达式函数以 select 提取查询?
how to create regex function to select an extract a query?
我正在尝试从字符串中提取查询,我尝试编写自己的函数,但它并不完全符合我的需要。
我需要的是:
www.website.com/8056432988456?id=5
,我需要 8056432988456
,有或没有 /
,即在 ?
.
之前
这是我为它制作的正则表达式:(?<=\/)(.*?)(?=\?)|(?<=\?)
有人可以帮我吗?
您可以使用
(?<=\/)\d+(?=(?:\/?\?.*)?$)
参见regex demo。
详情:
(?<=\/)
- 左边一定有一个/
\d+
- 一位或多位数字
(?=(?:\/?\?.*)?$)
- 在右边,必须有一个可选的出现:
(?:\/?\?.*)?
- 可选 /
的可选出现,然后是 ?
,然后是除换行符以外的任何零个或多个字符尽可能多
$
- 字符串结尾。
我正在尝试从字符串中提取查询,我尝试编写自己的函数,但它并不完全符合我的需要。 我需要的是:
www.website.com/8056432988456?id=5
,我需要 8056432988456
,有或没有 /
,即在 ?
.
这是我为它制作的正则表达式:(?<=\/)(.*?)(?=\?)|(?<=\?)
有人可以帮我吗?
您可以使用
(?<=\/)\d+(?=(?:\/?\?.*)?$)
参见regex demo。
详情:
(?<=\/)
- 左边一定有一个/
\d+
- 一位或多位数字(?=(?:\/?\?.*)?$)
- 在右边,必须有一个可选的出现:(?:\/?\?.*)?
- 可选/
的可选出现,然后是?
,然后是除换行符以外的任何零个或多个字符尽可能多$
- 字符串结尾。