Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.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
Javascript 正则表达式以查找特定项后的值_Javascript_Regex_Match - Fatal编程技术网

Javascript 正则表达式以查找特定项后的值

Javascript 正则表达式以查找特定项后的值,javascript,regex,match,Javascript,Regex,Match,我想保存在特定字符串之后出现的任何值 案文如下: ug=595ad8543534510555d9; ugs=1; s_ppv=54353; optimizelyEndUserId=orwe535908r0.58354354373; countryCode=US; geoData=new york|NY|11432|US|NA; _uetsid=_u5435fgdac3e; _t_tests={"[dasds59ec]":"B","[2fdfsde8cd]":"A","lift_exp":"m"}

我想保存在特定字符串之后出现的任何值

案文如下:

ug=595ad8543534510555d9; ugs=1; s_ppv=54353; optimizelyEndUserId=orwe535908r0.58354354373; countryCode=US; geoData=new york|NY|11432|US|NA; _uetsid=_u5435fgdac3e; _t_tests={"[dasds59ec]":"B","[2fdfsde8cd]":"A","lift_exp":"m"};
在上面的文本中,字段的值将因不同的用户而改变。标记名保持不变。我想获取geoData的值。所以,geoData=之后的所有内容。 在上面的数据中,我想返回:

纽约|纽约| 11432 |美国|纳

我提出了
/geoData=[^;]*/
,然而,这给了我
geoData=newyork | NY | 11432 | US | NA


如何将
geoData=
部分从正则表达式中排除,以便在
=
符号后给出值?

您应该使用捕获组(将要保留的部分括在括号中):
geoData=([^;]*)/

const match='ug=595ad8543534510555d9;ugs=1;s_ppv=54353;optimizelyEndUserId=orwe535908r0.58354354373;countryCode=美国;地理数据=纽约|纽约| 11432 |美国|纳_uetsid=5435fgda3e_t_tests={[dasds59ec]:“B”,“[2fdfsde8cd]:“A”,“lift_exp:“m”}。匹配(/geoData=([^;]*)/);

console.log(匹配[1])或使用
替换方法:

var text='ug=595ad8543534510555d9;ugs=1;s_ppv=54353;optimizelyEndUserId=orwe535908r0.58354354373;countryCode=美国;地理数据=纽约|纽约| 11432 |美国|纳_uetsid=5435fgda3e_t_tests={[dasds59ec]:“B”,“[2fdfsde8cd]:“A”,“lift_exp:“m”};'
console.log(
text.replace(/.*geoData=([^;]+).*/,“$1”)

)
谢谢,这正是我想要的!