我正在尝试创建一个bash脚本,该脚本使用通过curl从Wikipedia提取的信息来帮助分类我的音乐收藏。我已经知道它可以可靠地返回我想要的信息,但是由于Wikipedia的格式,有时会有一些我想丢弃的信息。它的格式也不总是一致的。有时是多行,有时只有一行,但是我想要的信息始终在“ [[”和“]]”之间定界。我只想保留[[和]]之间的文本,而忽略其余部分。到目前为止,我发现的所有解决方案都使用sed并依赖一致的格式。基本上我想做的是将一个长字符串格式化:
{{[[abcd]]efgh[[hijk]]lmno
[[pqrs]]
[[tuvw]]yz}}
并使用值创建一个数组
abcd
hijk
pqrs
tuvw
答案 0 :(得分:0)
使用GNU grep和与Perl兼容的正则表达式(PCRE):
grep -Po '(?<=\[\[).*?(?=]])' file
输出:
abcd hijk pqrs tuvw