任何人都可以使用shell脚本快速提取给定句子中的所有主题标签。
例如:
'This is a #test that will #allow me to #remove stuff'
会返回#test #allow #remove
答案 0 :(得分:6)
您可以尝试egrep -o '#[^ ]+'
。输出应如下所示:
#test
#allow
#remove
答案 1 :(得分:2)
只是提供awk的替代方案:
awk '{for (i=1; i<=NF; i++) if ($i ~ /^#/) print $i}'
这是提取这些数据的纯BASH方法:
x=$str # your original string
while :; do
if [[ $x =~ (\#[a-z]+)(.*)$ ]]; then
echo "${BASH_REMATCH[1]}"
x="${BASH_REMATCH[2]}"
else
break
fi
done