Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/392.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获取路径变量_Java_Regex_Url - Fatal编程技术网

Java 使用正则表达式从URL获取路径变量

Java 使用正则表达式从URL获取路径变量,java,regex,url,Java,Regex,Url,如何从以下URL获取customerid path变量: /客户/{customerid}/agreementid} customerid path变量的长度可以不同,因此我需要/customers/和/agreements之间的所有内容 我在网上搜索了一个解决方案,并试图自己构造一些正则表达式,但迄今为止没有成功。如果您知道URL中元素的顺序是固定的(即,/customers段之前没有任何内容,比如站点/语言前缀-/uk),您可以拆分URL并获取结果数组中的第二个元素。像这样: var url

如何从以下URL获取customerid path变量:

/客户/{customerid}/agreementid}

customerid path变量的长度可以不同,因此我需要/customers/和/agreements之间的所有内容


我在网上搜索了一个解决方案,并试图自己构造一些正则表达式,但迄今为止没有成功。

如果您知道URL中元素的顺序是固定的(即,
/customers
段之前没有任何内容,比如站点/语言前缀-
/uk
),您可以
拆分
URL并获取结果数组中的第二个元素。像这样:

var urlParts = url.split('/');
var customerId = urlParts[1]; // Arrays positions start at 0.
或者更优雅地说:

var customerId = url.split('/')[1];
如果您不确定URL结构,但知道客户ID总是在
/customers
段之后,那么可以使用正则表达式来提取它


更新:我刚刚意识到您指的是Java,但上述解决方案仍然有效。这里有一个关于Java中URL拆分的类似问题:

您好,欢迎使用SO。到目前为止你试过什么?请回答您的问题并添加所有相关代码,告诉我们什么不起作用,为什么,预期的输出是什么,以及发生了什么。如果遇到任何错误,请不要忘记包含完整的堆栈跟踪。