I'm using TextWrangler to get specific information from an XML. I need to find a list of file names that are present and print out only those file names.
An example of the code is below:
<file id="file_1045280">
<name>SKY_A026C032_150707_R4RO.mov</name>
<pathurl>file://localhost/M:/FPL_MEDIA/04_MEZZANINE/SKY/SKY-EP03/SKY-0312_20150707_AA_A026/SKY_A026C032_150707_R4RO.mov</pathurl>
<duration>1796</duration>
<timecode>
<rate>
<ntsc>false</ntsc>
<timebase>25</timebase>
</rate>
<frame>0</frame>
<displayformat>NDF</displayformat>
</timecode>
<media>
<video>
<duration>1796</duration>
<samplecharacteristics>
<width>1920</width>
<height>1080</height>
</samplecharacteristics>
</video>
</media>
</file>
<sourcetrack>
<mediatype>video</mediatype>
</sourcetrack>
<link>
<linkclipref>clipItem_1045280</linkclipref>
<mediatype>video</mediatype>
<trackindex>1</trackindex>
</link>
</clipitem>
<enabled>TRUE</enabled>
<locked>FALSE</locked>
</track>
</video>
</media>
</clip>
<clip id="clip_1045282">
<name>SKY_A026C018_150707_R4RO</name>
<duration>958</duration>
<rate>
<ntsc>false</ntsc>
<timebase>25</timebase>
</rate>
<in>-1</in>
<out>-1</out>
<masterclipid>clip_1045282</masterclipid>
<ismasterclip>TRUE</ismasterclip>
<media>
<video>
<track>
<clipitem id="clipitem_1045282">
<name>SKY_A026C018_150707_R4RO</name>
<duration>958</duration>
<masterclipid>clip_1045282</masterclipid>
<rate>
<ntsc>false</ntsc>
<timebase>25</timebase>
</rate>
<in>0</in>
<out>958</out>
<start>0</start>
<end>958</end>
<file id="file_1045282">
<name>SKY_A026C018_150707_R4RO.mov</name>
<pathurl>file://localhost/M:/FPL_MEDIA/04_MEZZANINE/SKY/SKY-EP03/SKY-0312_20150707_AA_A026/SKY_A026C018_150707_R4RO.mov</pathurl>
<duration>958</duration>
<timecode>
<rate>
<ntsc>false</ntsc>
<timebase>25</timebase>
</rate>
<frame>0</frame>
<displayformat>NDF</displayformat>
</timecode>
<media>
<video>
<duration>958</duration>
<samplecharacteristics>
<width>1920</width>
<height>1080</height>
</samplecharacteristics>
</video>
</media>
</file>
<sourcetrack>
<mediatype>video</mediatype>
</sourcetrack>
<link>
<linkclipref>clipItem_1045282</linkclipref>
<mediatype>video</mediatype>
<trackindex>1</trackindex>
</link>
</clipitem>
<enabled>TRUE</enabled>
<locked>FALSE</locked>
</track>
</video>
</media>
</clip>
<clip id="clip_1045283">
<name>SKY_A026C033_150707_R4RO</name>
<duration>1202</duration>
<rate>
<ntsc>false</ntsc>
<timebase>25</timebase>
</rate>
<in>-1</in>
<out>-1</out>
<masterclipid>clip_1045283</masterclipid>
<ismasterclip>TRUE</ismasterclip>
<media>
<video>
<track>
<clipitem id="clipitem_1045283">
<name>SKY_A026C033_150707_R4RO</name>
<duration>1202</duration>
<masterclipid>clip_1045283</masterclipid>
<rate>
<ntsc>false</ntsc>
<timebase>25</timebase>
</rate>
<in>0</in>
<out>1202</out>
<start>0</start>
<end>1202</end>
At the moment, I am using the following Grep:
.*?(\<name\>)(.*)(.mov).*
This manages to find the strings that I need. However, I need to replace all of the remaining text with nothing i.e. so I'm left with a list of file names.
Can anyone advise how I may go about this?
Thanks in advance, Matt