greediness in sed

前端 未结 5 606
南旧
南旧 2021-01-16 16:14

I want

ereg ($rat, $dog, $cat)

to become

preg_match (\'#\'.$rat.\'#\', $dog, $cat)

To achieve this, I did

5条回答
  •  忘掉有多难
    2021-01-16 17:12

    How about:

    $ echo 'ereg ($rat, $dog, $cat)' | sed "s/ereg *(\([^,]*\), \([^,]*\)\([^)]*\))/preg_match('#'.\1.'#', \2\3)/g"
    preg_match('#'.$rat.'#', $dog, $cat)
    

提交回复
热议问题