Parsing cfhttp.header

Currently, I’m parsing cfhttp.header to get only a specific header line with:

for (i in listToArray(cfhttp.header, chr(10))) {
	if (Left(i, 6) == "Link: ") {
		writeOutput(i);
	}
}

Any recommendations on a better way? Or is this about as good as it gets?

I only want the contents/value of a header starting with "Link: " for this particular call.

Why change what works?

That said, without seeing the solution you have I might have started with finding the position where Link: exists in the string, finding the position of the delimiter after (or fallback to the len of the string) then use mid to grab the value.

Without testing, this is the idea using semicolon instead of chr(10)

<cfscript>
str1 = "Legend: Zelda; Link: Hyrule"
linkStart = findnocase("link: ", str1)
linkEnd = find(";", str1, linkStart) 
linkEnd = linkEnd ? linkEnd : len(str1)+1 // fallback
keyValue = mid(str1, linkStart, (linkEnd-linkStart))
dump("keyValue='#keyValue#' linkStart=#linkStart# linkEnd=#linkEnd#")
</cfscript>