在匹配此模式的字符串周围添加方括号
Add bracket around a string that match this pattern
使用 sed 命令
在下面的句子中,在任何以 s 开头且包含 e 和 t 的单词周围添加 []
订购“微妙的展览资产集测试网站”。
这是我目前所拥有的(参见代码部分)
$ echo "subtle exhibit asset sets tests site." | sed 's/^s\ "et"/[]/g'
使用 GNU sed
$ sed 's/\<s\([a-z]*\?e[a-z]*\?t[a-z]*\?\|[a-z]*\?t[a-z]*\?e[a-z]*\?\)[^ ]*\>/[&]/g' input_file
[subtle] exhibit asset [sets] tests [site].
这可能就是您要查找的内容,使用 GNU sed for -E
因此我们不需要转义 (
和 )
捕获组定界符并且可以使用|
表示“或”,\w
shorthand 表示 word-constituent 个字符和 \<
个单词边界:
$ echo 'subtle exhibit asset sets tests site.' |
sed -E 's/\<s\w*(e\w*t|t\w*e)\w*/[&]/g'
[subtle] exhibit asset [sets] tests [site].
使用 sed 命令
在下面的句子中,在任何以 s 开头且包含 e 和 t 的单词周围添加 [] 订购“微妙的展览资产集测试网站”。
这是我目前所拥有的(参见代码部分)
$ echo "subtle exhibit asset sets tests site." | sed 's/^s\ "et"/[]/g'
使用 GNU sed
$ sed 's/\<s\([a-z]*\?e[a-z]*\?t[a-z]*\?\|[a-z]*\?t[a-z]*\?e[a-z]*\?\)[^ ]*\>/[&]/g' input_file
[subtle] exhibit asset [sets] tests [site].
这可能就是您要查找的内容,使用 GNU sed for -E
因此我们不需要转义 (
和 )
捕获组定界符并且可以使用|
表示“或”,\w
shorthand 表示 word-constituent 个字符和 \<
个单词边界:
$ echo 'subtle exhibit asset sets tests site.' |
sed -E 's/\<s\w*(e\w*t|t\w*e)\w*/[&]/g'
[subtle] exhibit asset [sets] tests [site].