日期:2014-05-16  浏览次数:20876 次

正则表达式问题,使用正则表达式找出指定字符串并替换?
在一个文件中,要找到我输入的Ip,并将其替换调,如在test.prop(文件格式不定)中有ip:11.12.13.162 和 11.12.13.16
  先在我输入11.12.13.16,就要在test.prop文件中找到11.12.13.16 但不需要11.12.13.162 
  目标就是 sed -in-place -e "s/11.12.13.61/11.12.13.81/g" test.prop

 红色部分的怎么写,等高手解决...

------解决方案--------------------
sed -in-place -e "s/\<11.12.13.61\>/11.12.13.81/g" test.prop
------解决方案--------------------
Perl code
$ cat test
11.12.13.16 11.12.13.162
dkjfj 11.12.13.16
dkjf00300
dkkjfjf 11.12.13.163dkjfjjf

$ sed ':a;N;$!ba;s/11.12.13.16\([^0-9]\)/11.12.13.81\1/g' test   
[color=#FF0000]11.12.13.81[/color] 11.12.13.162 
dkjfj [color=#FF0000]11.12.13.81[/color]
dkjf00300
dkkjfjf 11.12.13.163dkjfjjf