diff --git a/youtube_dl/extractor/xhamster.py b/youtube_dl/extractor/xhamster.py
index 261d323a7..97355d17f 100644
--- a/youtube_dl/extractor/xhamster.py
+++ b/youtube_dl/extractor/xhamster.py
@@ -64,8 +64,9 @@ def is_hd(webpage):
webpage = self._download_webpage(mrss_url, video_id)
title = self._html_search_regex(
- [r'
(?P.+?)(?:, (?:[^,]+? )?Porn: xHamster| - xHamster\.com)',
- r'([^<]+)
'], webpage, 'title')
+ [r']*>(.+?)(?:,\s*[^,]*?\s*Porn\s*[^,]*?:\s*xHamster[^<]*| - xHamster\.com)',
+ r']*>([^<]+)
',
+ r']+itemprop=".*?caption.*?"[^>]+content="(.+?)"'], webpage, 'title')
# Only a few videos have an description
mobj = re.search(r'Description: ([^<]+)', webpage)