如何在正则表达式中使用逗号作为结束点?

时间:2014-04-30 06:00:58

标签: java regex

说我有这个......

<Beginning of Pattern> <VALUE I WANT> <,>

所以我使用Regex输入模式的开头,(。*)为中间,但是如何标记逗号呢?我只尝试了逗号,但无济于事。

4 个答案:

答案 0 :(得分:1)

您是说在VALUE I WANT跟随<,>后跟<Beginning of Pattern>并且在文字String ResultString = null; try { Pattern regex = Pattern.compile("<Beginning of Pattern>\\s*<([^>]+)>\\s*<,>", Pattern.MULTILINE); Matcher regexMatcher = regex.matcher(subjectString); if (regexMatcher.find()) { ResultString = regexMatcher.group(1); // VALUE I WANT } } catch (PatternSyntaxException ex) { // Syntax error in the regular expression } 前面时匹配{{1}}吗?

如果是这样,您可以使用以下内容:

{{1}}

答案 1 :(得分:1)

如果您的数据是:

something ValueIWant,

你的正则表达式应该如下:

something (.*?),

答案 2 :(得分:0)

(.*)更改为(.*?),这将在第一个逗号处停止匹配。

提取目标的代码是:

String target = input.replaceAll(".*AAAA('.*?),.*", "$1");

答案 3 :(得分:0)

为什么不使用([^,]*)代替(.*)?这将捕获除逗号之外的所有字符。