I need to lift the YouTube link from some text which looks like this:
[youtube=http://www.youtube.com/v/qpbAe2HyzqA&hl=en&fs=1&]
Can anyone help?
I need to lift the YouTube link from some text which looks like this:
[youtube=http://www.youtube.com/v/qpbAe2HyzqA&hl=en&fs=1&]
Can anyone help?
Try something like this:
\[youtube=(https?://[^\]]+)\]
你可以使用awk。
awk ' FS="[" {print $(NF) } ' file_with_text > temp.txt
awk ' FS="]" {print $(NF-1)} ' temp.txt > results.txt
它分为两部分使其更清晰,因为 awk 那样奇怪。如果您只需要 URL 而不是 youtube=,那么您将需要使用 FS="youtube=" 等文件分隔符运行 awk。awk 的输入也可能很奇怪;如果 file_with_text 在第一行有文本,它可能会表现得很奇怪,如果文件以您选择的文件分隔符结尾,那么 awk 可能会出错(只需将 FS 符号以外的任何文本添加到文件末尾)。
编辑:删除了 cat 功能。作为一个教学答案似乎不太清楚,但它更简洁。