【发布时间】:2019-09-18 06:06:58
【问题描述】:
[发布这个问题是因为我找不到任何符合我的场景的问题,如果已经讨论过,请指出我的帖子,我将删除这个帖子。]
尝试创建一个正则表达式以匹配由, 或; 分隔的长字符串中的字符串app=myApp。
如果模式已结束且未被, 或; 终止,我的正则表达式将失败。
这是我使用的正则表达式:[^.][app|APP]=(.*?)[,|;] 适用于以下字符串:
-
env=prod;app=myApp;app.secure=yes app=myApp;app.secure=yes
但不适用于以下:
-
env=prod;app=myApp app=myApp
这是我的代码:
Pattern pattern = Pattern.compile("[^.][app|APP]=(.*?)[,|;]");
Matcher matcher = pattern.matcher(stringVar);
if (matcher.find()) {
return matcher.group(1);
}
我也试过:
[^.][app|APP]=(.*?)[,|;|$]
但仍然没有运气。
【问题讨论】: