sed 正则表达式全局查找和删除字符串
sed regex find and delete string globally
我有以下(有效的)正则表达式:
UNUSED([^,}]+)\}|,\s?UNUSED([^{]+)|UNUSED([^{]+),\s?|UNUSED([^{]+)
我运行命令
sed 's/UNUSED([^,}]+)\}|,\s?UNUSED([^{]+)|UNUSED([^{]+),\s?|UNUSED([^{]+)//g' < index.css > newfile
但是新文件仍然包含所有应该删除的模式。我做错了什么?
index.css 包括。正则表达式:
您正在使用扩展的 POSIX 正则表达式。您需要将 -r
传递给 sed 以告诉它使用扩展的 POSIX 正则表达式。
另请注意,您正在使用的捕获组可以省略:
s/UNUSED[^,}]+}|,\s?UNUSED[^{]+|UNUSED[^{]+,\s?|UNUSED[^{]+//g
当然你也可以使用基本的 POSIX 正则表达式,然后不使用 -n
选项:
s/UNUSED[^,}]\+}\|,\s?UNUSED[^{]\+\|UNUSED[^{]\+,\s?\|UNUSED[^{]\+//g
我有以下(有效的)正则表达式:
UNUSED([^,}]+)\}|,\s?UNUSED([^{]+)|UNUSED([^{]+),\s?|UNUSED([^{]+)
我运行命令
sed 's/UNUSED([^,}]+)\}|,\s?UNUSED([^{]+)|UNUSED([^{]+),\s?|UNUSED([^{]+)//g' < index.css > newfile
但是新文件仍然包含所有应该删除的模式。我做错了什么?
index.css 包括。正则表达式:
您正在使用扩展的 POSIX 正则表达式。您需要将 -r
传递给 sed 以告诉它使用扩展的 POSIX 正则表达式。
另请注意,您正在使用的捕获组可以省略:
s/UNUSED[^,}]+}|,\s?UNUSED[^{]+|UNUSED[^{]+,\s?|UNUSED[^{]+//g
当然你也可以使用基本的 POSIX 正则表达式,然后不使用 -n
选项:
s/UNUSED[^,}]\+}\|,\s?UNUSED[^{]\+\|UNUSED[^{]\+,\s?\|UNUSED[^{]\+//g