Regex 使用bash在引号的开头添加命令

Regex 使用bash在引号的开头添加命令,regex,linux,bash,perl,sed,Regex,Linux,Bash,Perl,Sed,我想使用sed执行以下步骤: before: test="testabc" after: test="quiz testabc" 如何在引号的开头加上空格 谢谢您的帮助。您只需使用以下sed命令即可 $ echo 'test="testabc"' | sed 's/="\([^"]*\)"/="quiz \1"/' test

我想使用sed执行以下步骤:

before: test="testabc"

after: test="quiz testabc"
如何在引号的开头加上空格


谢谢您的帮助。

您只需使用以下
sed
命令即可

$ echo 'test="testabc"' | sed 's/="\([^"]*\)"/="quiz \1"/'                                                                                     
test="quiz testabc"
说明:

  • s/pattern/replacement/
    在搜索/替换模式下使用sed
  • =“\([^”]*\)”
    此正则表达式将获取
    =“一些字符串”
  • 然后,您可以使用捕获组
    ()
    并将
    \1
    反向引用到该组,以保留字符串内容并添加测验
  • s/pattern/replacement/g
    如果需要搜索和替换此模式的多个匹配项,请使用全局替换模式
或者下面的
perl
解决方案也可以使用:

$ echo 'test="testabc"' | perl -pe 's/(?<==")([^"]*)(?=")/quiz \1/'
test="quiz testabc"

$echo'test=“testabc””| perl-pe's/(?您尝试了什么?
sed's/=“/&quick/g”
即使学习
s/search/replace/
的简单sed语法也会给您带来
sed's/“/”quick/”
…诚实的问题,搜索sed示例真的有那么困难吗?您可以随时查看这里的信息页面