regex - 使用 sed 匹配正则表达式

标签 regex sed

我对 sed 和正则表达式了解不多。我想用字符串“0”替换仅包含制表符的每一行。我的文件中也有一些行只包含“\n”。

基本上我想使用正则表达式 ^\h+$ 并将匹配项替换为 0。

我试过:

sed -i 's/^\h+$/0/' file.txt

但是没用

最佳答案

您可以使用:

sed -i.bak -E 's/^[[:blank:]]+$/0/' file

POSIX 字符类 [[:blank:]] 匹配空格或制表符,与 PCRE 中的 \h 相同。

-i.bak是将原文件保存在file.bak中,以备恢复时使用。

关于regex - 使用 sed 匹配正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45755207/

相关文章:

java - 要替换的行中的正则表达式

bash - 重命名多个目录,同时保留中间部分具有不同的后缀

linux - 如果行以另一个字符串开头,则替换文件中的字符串

regex - 如何从两个文件中读取内容并合并到 bash shell 中的第三个文件

python - pandas 从单元格中删除重复项

regex - 如何在word中使用VBA(宏)使用/启用(RegExp对象)正则表达式

java - 使用正则表达式从电子邮件中提取姓名

Python复杂的正则表达式字符串扩展

mysql - sed 错误,而下划线是搜索文本的一部分

linux - 如何使用列表生成配置文件