删除string与sed的组合

我用sed命令删除了一行文本中的一些string:

sed 's:\(pattern\.\)::g' file 

但某些模式有字母和数字:

 sed 's:\(pattern\.\|pattern1\.\|pattern2\.\|pattern23\.\|patternx\.\|patternYx\.\)::g' file 

长等…

如何在一行中删除模式(总是相同的)+数字(任意组合0-9)和字母(AZ,az),以避免重复“模式+某事”

谢谢

删除pattern后面跟零个或多个数字或字母. , 使用:

 sed 's:pattern[[:alnum:]]*\.::g' 

笔记:

  1. 正则表达式不使用parens分组, \(...\) ,所以我删除它。

  2. [[:alnum:]]匹配任何字母或数字。

  3. [[:alnum:]]*匹配零个或多个字母或数字。

如果你真的想删除包含模式的行,那么使用sed的delete命令d

尝试这个:

 $ sed '/pattern.*/d' file