我对这个Unix的东西完全陌生--这里的第一个问题!希望你们能帮上忙
问题:
我有大量杂乱无章的web源代码(包装/未格式化),其中包含多个事件:
('http://www.example.com/path/audio.mp3')
你能帮我弄一条单线船吗?这将隔离这些括号,其中包含一个包含".mp3"、清除前导/尾随"()“和”'“字符的URL,然后将其打印为列表(每行一条)到活动的.txt文件。
注意:一行将作为服务/工作流在Mac上的Automator中使用,以便对“所选文本”进行操作。
任何帮助都将是非常感谢的,因为(尽管拖网通过所有的在线呼噜),我完全迷路了。
诚挚的问候,
戴夫
发布于 2010-12-09 19:55:46
使用egrep和-o (只输出匹配的部分)应该可以做到这一点。试着做这样的事情:
egrep -o "http://[^'\"]+.mp3" FILENAME发布于 2010-12-09 19:48:20
PERL,这是Mac应该有的。
#!/usr/bin/perl
while(<STDIN>)
{
$_ =~ /.*(http:\/\/.*\.mp3).*/;
print $1 . '\n';
}发布于 2010-12-09 19:49:25
试着完善以下几点:
perl -ne $'while(/\(\'(http:\/\/[\w.\/]+?\.mp3)\'\)/g) { print "$1\n"; }' < input_file > output_file它一次读取stdin (此处:input_file)一行,查找该行中的每一个"url“,并将其打印到没有('和')的stdout (此处:output_file)。
https://stackoverflow.com/questions/4402342
复制相似问题