当前文字
Variable length text = some string(some more text
更改为
Variable length text = some string(addition some more text
只有在遇到“=”字符后,才需要在一行中的第一个括号后添加某个文本。另一个条件是忽略“=(”这样的模式,这实际上意味着你应该忽略只有“=”和“(”
之间的空格的模式我的尝试:
sed -e "s#*=(\w\()#\1(addition#g"
感谢您的期待!
答案 0 :(得分:1)
根据您的需要调整此项:
$ echo 'Variable length text = some string(some more text' |\
sed 's/^[^=]*=[^(]*[[:alnum:]][^(]*(/&addition /'
匹配:
=
任何次数之外的任何内容=
(
任何次数之外的任何内容(
任何次数之外的任何内容(
...并将匹配的字符串替换为' addition'
。
输出是
Variable length text = some string(addition some more text
答案 1 :(得分:1)
in perl
s/(.*?=[\s][^(]+?)\((.*)/$1(aditional text $2/