gpt4 book ai didi

java正则表达式搜索一个词

转载 作者:行者123 更新时间:2023-11-29 04:20:10 24 4
gpt4 key购买 nike

我从给定的游戏服务器收到了以下命令:

SVR GAME MOVE {
PLAYER: "player2",
MOVE: "26",
DETAILS: ""
}

现在我想使用正则表达式获取 move 的值。*注意玩家名称是一个可变的登录名,因此它也可以包含很多数字。

我尝试了以下方法:

Pattern pat = Pattern.compile(".*MOVE: *([0-9]+).*");
Matcher mat = pat.matcher(parse);
if(mat.matches()) {
parse = mat.group(1);
}

*parse 包含带有命令的字符串。

有人可以解释一下我做错了什么吗?

提前致谢

最佳答案

您在正则表达式中遗漏了 ":

    public static void main(String[] args) {
String line = "SVR GAME MOVE {PLAYER: \"player2\", MOVE: \"26\",DETAILS: \"\"}";
Pattern pat = Pattern.compile(".*MOVE: *\"([0-9]+).*");
Matcher mat = pat.matcher(line);
if(mat.matches()) {
String move = mat.group(1);
System.out.println(move);
}
}

打印26

关于java正则表达式搜索一个词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49857895/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com