regex - sed 问题。我究竟做错了什么?

标签 regex sed

我正在尝试使用 sed 将 [ 'xxx' ] 替换为 [ xxx ]:

sed -e 's/a[ '\(.*\)' ]/a[ \1 ]/' ./Test
sed: -e expression #1, char xx: invalid reference \1 on `s' command's RHS

我做错了什么?

谢谢!

最佳答案

您需要像这样转义 []:

echo "a[ 'xxx' ]" | sed "s/a\[ '\(.*\)' \]/a[ \1 ]/"

关于regex - sed 问题。我究竟做错了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5966884/

相关文章:

macos - 使用 bash 脚本在文件中添加多行

Python:从 tar.gz 中提取具有模式的特定文件而不提取完整文件

python - 如何在正则表达式中使用包含数字的变量?

php - 如果 href 或 src 前面有一个点,则正则表达式需要不匹配

regex - 提取 bash 脚本中文件的两个表达式之间的行(使用 regexp、sed)

python - 带变量的 sed 不能完全按照我希望的方式工作

c# - 设置一个c#正则表达式

regex - Rust 正则表达式模式 - 无法识别的转义模式

mysql - 将 sql 模式文件的 git diff 转换为应用/撤消 sql 脚本

sed + 仅在文件的最后一行删除字符串