我用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'
笔记:
正则表达式不使用parens分组, \(...\)
,所以我删除它。
[[:alnum:]]
匹配任何字母或数字。
[[:alnum:]]*
匹配零个或多个字母或数字。
如果你真的想删除包含模式的行,那么使用sed
的delete命令d
。
尝试这个:
$ sed '/pattern.*/d' file