水木社区手机版
首页
|版面-Java技术(Java)|
新版wap站已上线
返回
1/1
|
转到
主题:问一个 java 正则
楼主
|
xeagle
|
2022-02-09 18:13:33
|
展开
想在这个 url 中提取参数 app 的值, 但参数 app 是可选的:
https://foo_url?a=b&app=abc&c=d
试了下面这个正则, 不好使. 可以匹配上面的 url, 但捕获组取不到 app 的值
https://.+\?.+(?:&app=([^&]+))?&.+
--
FROM 123.125.37.*
2楼
|
xeagle
|
2022-02-14 19:34:11
|
展开
这样写还是有问题, 字串换成
https://foo_url?c=d&a=b&app=abc&c=d
就不好使了.
又试了一下, 把"(?:&app=([^&]+))"后面的"?"换成"+", 捕获组就可以取到 abc.
【 在 MyWorkLife 的大作中提到: 】
:
https:\/
\/.+?\?.+?(?:&app=([^&]+))?&.+
:
--
FROM 123.125.37.*
6楼
|
xeagle
|
2022-02-26 17:28:29
|
展开
意思是可能没有app这个参数
【 在 nikezhang 的大作中提到: 】
:
: 你说app这个参数名是可以选的?换成bbpp也有可能?
: --
: 发自xsmth (iOS版)
: --
:
发自「今日水木 on iOS」
--
FROM 61.148.244.*
8楼
|
xeagle
|
2022-02-27 09:08:46
|
展开
主要是想知道正则能不能完成这个功能,那么写为什么不能捕获
【 在 nikezhang 的大作中提到: 】
:
: 那更简单的方法是查找&app=在字符串的位置,然后循环拼接字符到后面第一个&就行,要不你就用Spring的url工具类,帮你把参数名和值都分析好了,你自己取
: --
: 发自xsmth (iOS版)
: --
:
发自「今日水木 on iOS」
--
FROM 124.64.17.*
1/1
|
转到
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版