1

给定以下正则表达式模式pattern="\[Adjective]|\[Noun]|\[Adverb]"和一个字符串,$lib该字符串可以是常规单词或标记,例如[Adjective]or[Noun]我想将替换结果存储到变量中。

该声明

printf "%s" $l | sed -E 's/'$pattern'/'$lib'/'

执行替换就好了,但是当我将其更改为

eval foo=\$"l | sed -E s/'$pattern'/'$lib'/"
echo $foo

我得到的只是空白。

有任何想法吗?

4

1 回答 1

2
foo=$(printf "%s" $l | sed -E 's/'$pattern'/'$lib'/')
于 2013-11-12T22:03:23.960 回答