塞德匹配确切

Num*_*pty 12 linux bash sed

我目前正在使用's/string/new_string/g'一些CSV文件,但是在以下情况下我遇到了困难:

我想替换实例'192.168.0.11',但它也会捕获实例'192.168.0.111'.

我怎样才能确保sed只能抓住'192.168.0.11'而不是'192.168.0.111'?我显然必须为许多变量重复这一点,因此很容易理解可扩展的东西.

谢谢!

dav*_*ave 23

我不确定你使用的正则表达式是什么,但如果你想要'192.168.0.11'的完全匹配,你可以使用: s/\<192\.168\.0\.11\>//g

\<\>部队的精确匹配.

  • 注意`.`匹配任何字符,因此`192.168.0.11`将匹配`192.168.05.1`.你还应该用反斜杠引用这些点(`$ sed's /\<192\.168\.0\.11 \> // g'`). (3认同)