我用来sed
查找与 00/00/0000 格式的日期匹配且后面有任意数量的空格的任何表达式,然后将其替换为字母 h。我做出了这样的表述:
sed -E 's/[[0-9][0-9]\/[0-9][0-9]\/[0-9][0-9][0-9][0-9][[:space:]]]/h/g' dates-input.txt
但不工作。
答案1
这里有几个问题:
/
表达式中的斜杠 ( ) 必须进行转义。最外面的括号应该是圆括号或完全省略。
如果您希望允许并替换任意数量的空间,则表达式应该是
[[:space:]]*
,而不仅仅是[[:space:]]
。
尝试这个:
's/[0-9][0-9]\/[0-9][0-9]\/[0-9][0-9][0-9][0-9][[:space:]]*/h/g'