2014-12-10 3 views
0

Как удалить теги абзацев, которые обернуты вокруг ссылок YouTube из моей строки? Они выглядят так:Regex with Swift

<p>https://www.youtube.com/watch?v=2U_41PxnXhA</p> 

Я все еще хотят <p> тегов вокруг обычного текста, только не тогда, когда есть YouTube ссылки.

ответ

0

использованием NSRegularExpression

var contentText = "<p>https://www.youtube.com/watch?v=2U_41PxnXhA</p>" 
let regex = NSRegularExpression(pattern:"<p>(.*?)</p>", options:nil, error:nil)! 
let match = regex .matchesInString(contentText, options:nil, range: NSRange(location:0, length:contentText.length)) 

for r in match 
{ 
    var url = contentText.substringWithRange(r.rangeAtIndex(1)) 
} 

удачи!

+0

Не избавитесь от всех тегов абзаца? – codeman

+0

'pattern:"> (https: //www.youtube.com.*?) <' – soku

+0

Ошибка при использовании rangeAtIndex: NSRange не конвертируется в Range codeman

0

Regex:

<p>(https?://www\.youtube\.com\b.*?)<\/p> 

в ИО, я думаю, что вам нужно, чтобы избежать \ еще раз,

"<p>(https?://www\\.youtube\\.com\\b.*?)</p>" 

Затем замените совпавшие символы на,

$1 

или \1

DEMO

+0

спасибо. Любой пример кода в Swift? – codeman

+0

извините, я не знаю swift, но это регулярное выражение должно работать. –