Javascript 如何打印&x27\1';使用es6 String.raw

Javascript 如何打印&x27\1';使用es6 String.raw,javascript,ecmascript-6,Javascript,Ecmascript 6,String.raw似乎是编写类似 const command = String.raw`sed -n 's/${hash} \(.*\)/\1/p' 但它不起作用,因为无法用String.raw编写\1,问题如下所示: console.log(String.raw`\1`) =>SyntaxError: Octal literals are not allowed in template strings. console.log(String.raw`\\1`) \\1 我能看到的

String.raw
似乎是编写类似

const command = String.raw`sed -n 's/${hash} \(.*\)/\1/p'
但它不起作用,因为无法用String.raw编写
\1
,问题如下所示:

console.log(String.raw`\1`)
=>SyntaxError: Octal literals are not allowed in template strings.

console.log(String.raw`\\1`)
\\1

我能看到的唯一方法就是

let x = '\\1'
const command = String.raw`sed -n 's/${hash} \(.*\)/${x}/p'`
@HBP在评论中几乎做出了正确的判断

const command = String.raw`sed -n 's/${hash} \(.*\)/${'\\1'}/p'`

看起来是最理想的

似乎可以用
'\1'
替换
x
,省去了对新变量的需要@HBP是什么意思<代码>${'\1'}?不完全是。。。但是,
${'\\1'}
有一个建议允许: