Regex 把绳子拆开,切掉

Regex 把绳子拆开,切掉,regex,sed,Regex,Sed,我正在使用sed命令查找作为单词/动作的/controller "href="/bdgp/bdgp-record-com1-form?type=R&year=<?php echo $year;?>&batchNumber=<?php echo $this->escapehtml($animal->BATCH_NUMBER);?> " “href=“/bdgp/bdgp-record-com1-form?type=R&year=&batchN

我正在使用sed命令查找作为单词/动作的
/controller

"href="/bdgp/bdgp-record-com1-form?type=R&year=<?php echo $year;?>&batchNumber=<?php echo $this->escapehtml($animal->BATCH_NUMBER);?> " 
“href=“/bdgp/bdgp-record-com1-form?type=R&year=&batchNumber=”
这样就改变了结果

href="<?php echo $this->url("bdgp", array("action"=>"bdgp-record-com1-form"))?>?type=R&year=<?php echo $year;?>&batchNumber=<?php echo $this->escapehtml($animal->BATCH_NUMBER);?>
href=“?type=R&year=&batchNumber=
这是我正在使用的sed命令,它查找类似/anything/anything/anything的模式

sed -i 's%href=\"\/\([^/]*\)\/\([^/]*\)?\([^/]*\)%href=\"<?php echo $this->url(\"\1\", array(\"action\"=>\"\2\"))?> \"<%g' changes.txt;

sed-i的%href=\“\/\([^/]*\)\/\([^/]*\)?\([^/]*\)%href=\“\”不确定它是否会对其他输入起作用……但对于给定的示例,您只需按以下顺序使用三个
s
命令:首先更改第一个
,然后更改前两个
/
方法,如
sed's/”)>?>;s%/%,数组(“操作”=>“%2、 s%/%这很有趣!使用sed oO的一些功能。现在只需要使用它,但有趣的是,如果没有oO知识,它会变得多么糟糕!我现在就试试。它应该与另一个命令相反使用,是吗?这非常有效。我只需要知道如何将它添加到我以前的命令中。没有人会停止像oO一样调整。如果添加我应该使用三个
s
命令吗?首先,将字符串更改为使用该方法,然后将?浓缩到结尾,然后是其余部分?请给出一个清晰的模式,而不是我正在使用sed命令查找字符串,然后将其更改为这样…您可以描述希望匹配的字符串或不希望匹配的字符串。
href="<?php echo $this->url("bdgp", array("action"=>"bdgp-record-com1-form?type=R&year=<?php echo $year;?>&batchNumber=<?php echo $this->escapehtml($animal->BATCH_NUMBER);?>