Skip to content

Instantly share code, notes, and snippets.

@brownsoo
Created August 12, 2024 12:13
Show Gist options
  • Save brownsoo/2ab80b459be33ef79dd329bee8fce29d to your computer and use it in GitHub Desktop.
Save brownsoo/2ab80b459be33ef79dd329bee8fce29d to your computer and use it in GitHub Desktop.
html img src 값 가져오기
import Foundation
let htmlString =
"""
<div class="class-fr-editor">
<span class="fr-video"><span class="thumb"><img data-src="https://download.hiclass.net/7e80/8680/9280/cf80/0a685485-0db8-49ff-adff-4e0fe969ed6d.jpg" class="lozad" src="https://download.hiclass.net/7e80/8680/9280/cf80/0a685485-0db8-49ff-adff-4e0fe969ed6d.jpg" data-loaded="true"></span></span>
<p></p>
<p></p>
<p><img class="fr-fic fr-dib lozad" data-src="https://download.hiclass.net/7e80/8680/9280/cf80/8ec6562d-b6c9-46b4-be21-1416dd83c624.jpg" src="https://download.hiclass.net/7e80/8680/9280/cf80/8ec6562d-b6c9-46b4-be21-1416dd83c624.jpg" data-loaded="true"></p>
</div>
"""
let imgSrcReg = "<img\\s[^>]*?src\\s*=\\s*['\"]([^'\"]*?)['\"][^>]*?>"
do {
let regex = try NSRegularExpression(pattern: imgSrcReg)
let nsString = htmlString as NSString
let results = regex.matches(in: htmlString, range: NSRange(location: 0, length: nsString.length))
results.forEach { result in
let srcRange = result.range(at: 1)
let src = nsString.substring(with: srcRange)
print(src)
}
} catch {
debugPrint(error)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment