Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 正则表达式匹配用户代理中的版本号(应用程序中没有名称)_Java_Regex - Fatal编程技术网

Java 正则表达式匹配用户代理中的版本号(应用程序中没有名称)

Java 正则表达式匹配用户代理中的版本号(应用程序中没有名称),java,regex,Java,Regex,例如,使用此用户代理 Mozilla/5.0 (Linux; U; fr-fr; Desire HD Build/FRG83D) **MyApp/2.2.1** AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533 我制作了这个正则表达式: MyApp/\d+(\.\d+)+ 正确匹配“MyApp/2.2.1”。我的问题是如何修改这个正则表达式以只匹配版本号 谢谢大家! 只需将模式MyApp/与版本号之前的零

例如,使用此用户代理

 Mozilla/5.0 (Linux; U; fr-fr; Desire HD Build/FRG83D) **MyApp/2.2.1** AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533
我制作了这个正则表达式:

MyApp/\d+(\.\d+)+
正确匹配“MyApp/2.2.1”。我的问题是如何修改这个正则表达式以只匹配版本号


谢谢大家!

只需将模式
MyApp/
与版本号之前的零件匹配,放入一个积极的look-behind断言中即可

(?<=MyApp/)\d+(?:\.\d+)+

只需将模式
MyApp/
与版本号之前的零件匹配,放在肯定的look-behind断言中即可

(?<=MyApp/)\d+(?:\.\d+)+

您只需将您的版本放入一个组中:

MyApp/(\d+(\.\d+)+)
或者用积极的眼光看后面:

(?<=MyApp/)\d+(\.\d+)+

(?您只需将您的版本放入一个组中:

MyApp/(\d+(\.\d+)+)
或者用积极的眼光看后面:

(?<=MyApp/)\d+(\.\d+)+

(?语言是java语言是java