正则表达式删除>之前的内容

时间:2014-07-17 23:11:26

标签: regex json

尝试创建一个在>之前删除ABC的正则表达式。例如。

Agencies > Freelancers > Driving Instructors

之前的任何事情>已移除。只留下驾驶仪表。

到目前为止,我可以删除非字母数字

[^a-zA-Z0-9 -]

我也试过

.*?(?=[^a-zA-Z0-9 -]) 

但那只会删除代理商。

重点是,

首先得到第一个字。

机构。

将其存储到json对象中。 然后,使用.match抓住任何其他以“Agencies”为其子项的项目。

因此我应该有这个。

{"Agencies":[
   {"link":"Freelancers "}, 
   {"link":"Driving Instructors"},
]}

我并不关心jSon,但我需要首先进行迭代。

谢谢。

1 个答案:

答案 0 :(得分:2)

哪种语言?在PHP中,也许与#34;爆炸"你有足够的:

<?
$string = "Agencies > Freelancers > Driving Instructors";
$exploded = explode(">",$string);
$key = trim(array_shift($exploded));
$array = array($key=>array());
foreach($exploded as $subitem)
{
        $array[$key][] = array("link"=>$subitem);
}
echo json_encode($array);
?>

使用javascript可能是这样的:

var string = "Agencies > Freelancers > Driving Instructors";
var exploded = string.split(">");
var key = exploded[0].trim();
var values = new Array();
for(i=1;i<exploded.length;i++)
{
    values.push({link:exploded[i].trim()});
}
var json = "{\"" + key + "\": " + JSON.stringify(values) +"}";