正则表达式返回 javascript 变量


Regex to return javascript variable

>新手问题 - 我有一个字符串,我正在尝试将其拉出所有卷曲大括号之间和字符串station=之后。

我有一个像这样的正则表达式 station={(.*?)} ,对于这样的字符串:

var stationMarkers=new Array();function genateScript(){var station;station={id:"1",name:"River Street , Clerkenwell",lat:"51.52916347",long:"-0.109970527",nbBikes:"16",nbEmptyDocks:"2",installed:"true",locked:"false",temporary:"false"};var latlng = new google.maps.LatLng(station.lat ,station.long); var marker = new google.maps.Marker({position: latlng,map: map,title:station.name,station:station,icon: imageInstalled});ShowInfoBulle(marker, 0, station);stationMarkers.push(marker);station={id:"2",name:"Phillimore Gardens, Kensington",lat:"51.49960695",long:"-0.197574246",nbBikes:"28",nbEmptyDocks:"8",installed:"true",locked:"false",temporary:"false"};var latlng = new google.maps.LatLng(station.lat ,station.long); var marker = new google.maps.Marker({position: latlng,map: map,title:station.name,station:station,icon: imageInstalled});ShowInfoBulle(marker, 1, station);stationMarkers.push(marker);station={id:"3",name:"Christopher Street, Liverpool Street",lat:"51.52128377",long:"-0.084605692",nbBikes:"4",nbEmptyDocks:"27",installed:"true",locked:"false",temporary:"false"};var latlng = new google.maps.LatLng(station.lat ,station.long);

但是,这在 PHP 上返回和错误:Delimiter must not be alphanumeric or backslash

如果您使用的是preg_match则需要向模式参数添加分隔符。 即:

preg_match('/' . $pattern . '/', $subject);