用于使用TextWrangler查找和替换xml的Applescript

时间:2014-05-02 11:52:29

标签: html xml grep applescript

如何实现<ContactsWWW>www.site.com</ContactsWWW>自动替换为<a href="http://www.site.com">www.site.com</a>,其中&#34; www.site.com&#34;许多xml文件之间有什么不同?

编辑:解决了这个问题; replace "<ContactsWWW>((?i)(http|ftp|www)(\\S+)|(\\S+) (\\.gov|\\.us|\\.net|\\.com|\\.edu|\\.org|\\.biz))</ContactsWWW>" using "<a href='http://\\1'>\\1</a>" options {search mode:grep, starting at top:true, wrap around:false, backwards:false, case sensitive:true, match words:false, extend selection:false}

2 个答案:

答案 0 :(得分:0)

如果您可以使用awk,请执行以下操作:

awk -F"[<>]" '/ContactsWWW/ {print "<a href=\"http://"$3"</a>"}' file
<a href="http://www.site.com</a>

答案 1 :(得分:0)

Applescript / sed解决方案。使用.txt文件测试。也应该使用.xml文件。(?)

do shell script "
oIFS=$IFS
IFS='\t\n'
for theFile in $(find " & quoted form of POSIX path of (choose folder) & " -type f -name '*.xml');do
sed -i '' -e 's/<ContactsWWW>\\(.*\\)<\\/ContactsWWW>/<a href=\"http:\\/\\/\\1\">\\1<\\/a>/' $theFile
done
IFS=$oIFS
"