我使用sed命令删除文本行中的一些字符串:
sed 's:\(pattern\.\)::g' file
但某些模式有字母和数字:
sed 's:\(pattern\.\|pattern1\.\|pattern2\.\|pattern23\.\|patternx\.\|patternYx\.\)::g' file
很长一段时间......
如何在一行中删除模式(总是相同)+数字(任意组合0-9)和字母(AZ,az),以避免重复"模式+某事"
由于
答案 0 :(得分:1)
要删除pattern
后跟零个或多个数字或字母后跟.
,请使用:
sed 's:pattern[[:alnum:]]*\.::g'
注意:
正则表达式不使用parens分组\(...\)
,所以我删除了它。
[[:alnum:]]
匹配任何字母或数字。
[[:alnum:]]*
匹配任何字母或数字的零或多个。
答案 1 :(得分:0)
如果您确实要删除包含模式的行,请使用sed
&#39}删除命令d
。
试试这个:
$ sed '/pattern.*/d' file