Javascript 在特殊字符的第一个空格之后和第一个实例之前获取子字符串?

Javascript 在特殊字符的第一个空格之后和第一个实例之前获取子字符串?,javascript,substring,Javascript,Substring,我正在成功返回字符串中空格的第一个实例之前的子字符串: var str = "test1 test2 test3 (test4)"; var str_BeforeSpace = str.substr(0,str.indexOf(' ')); // returns "test1" 我接下来要做的是返回一个子字符串,该子字符串存在于“(”的第一个空格之后和第一个实例之前。在本例中,所需的子字符串是“test2 test3”(不带尾随空格).差别不大: str.substring(str.index

我正在成功返回字符串中空格的第一个实例之前的子字符串:

var str = "test1 test2 test3 (test4)";
var str_BeforeSpace = str.substr(0,str.indexOf(' '));
// returns "test1"
我接下来要做的是返回一个子字符串,该子字符串存在于“(”的第一个空格之后和第一个实例之前。在本例中,所需的子字符串是“test2 test3”(不带尾随空格).

差别不大:

str.substring(str.indexOf(' ') + 1, str.indexOf('('));

如果要修剪前导空格和尾随空格,请参见。

在示例字符串“John B.Doe(2016类)”中,此函数返回“B.Doe(类)”,您可能希望将其设置为
a=str.indexOf(“”),B=str.indexOf(“”(“”),a)
你的意思肯定是
slice
,而不是
substr
?@Bergi:我不记得是
substr
还是
substring
取结尾索引。所以我想我的意思是
substring
。我想
slice
也能用。我总是用
slice
。它在数组上也能用:-)