Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.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 从URL中提取随机生成的ID_Java_Url_Selenium_Extract - Fatal编程技术网

Java 从URL中提取随机生成的ID

Java 从URL中提取随机生成的ID,java,url,selenium,extract,Java,Url,Selenium,Extract,我需要为Java中的Selenium测试提取URL的随机生成部分 浏览器打开页面时,例如: /edit_person.html?id=eb58cea3a3772ff656987792eb0a8c0f 然后,我可以通过以下方式显示url: String url = driver.getCurrentUrl(); 但是现在我只需要得到等号后面随机生成的ID 在变量URL中将整个URL设置为字符串后,如何提取参数id的值?将查询部分设置为字符串,这是一个简单的正则表达式匹配,用于隔离所需的部分 i

我需要为Java中的Selenium测试提取URL的随机生成部分

浏览器打开页面时,例如:

/edit_person.html?id=eb58cea3a3772ff656987792eb0a8c0f
然后,我可以通过以下方式显示url:

String url = driver.getCurrentUrl();
但是现在我只需要得到等号后面随机生成的ID

在变量URL中将整个URL设置为字符串后,如何提取参数id的值?

将查询部分设置为字符串,这是一个简单的正则表达式匹配,用于隔离所需的部分


id=(.*)
将得到您想要的,只要它是查询字符串中的唯一内容。

这就是解决问题的方法:

String url = driver.getCurrentUrl();
        URL aURL = new URL(url);
        url = aURL.getQuery();
        String[] id = url.split("=");
        System.out.println(id[1]);  

感谢贾罗德·罗伯森

使用URI类获取查询部分,然后自己解析查询部分(沿着
&
切割,然后沿着
=
切割),您尝试了什么?有很多方法可以做到这一点,
URL
类有一些方法可以使这一点变得简单