2012-02-29 24 views
1
some text <a href="https://sample.com"</a>some text 
<p> some text1 <a href="https://example1.com"</a></p> 
<p> some text 2<a href="https://example2.com"</a></p> 
<p> some text 3<a href="https://example3.com"</a></p> 
some text <a href="https://sample.com"</a>some text 

私はこのような文字列を持っています。 <p>タグ内のリンクのみを取得する必要があります。この文字列を解析するには、正規表現を使用する必要があります。特定のタグ内のリンクを取得するための正規表現

+2

リンクのフォーマットが正しくありません。おそらく、あなたが試した以前のソリューションがこの問題にぶつかってきたのかもしれません。 –

+1

regexを使用してHTMLを解析しないでください。代わりにHTMLパーサーを使用してください。 – Alex

+0

特に正規表現を使用する必要がありますか?次のようなjqueryセレクタを使うことができます: 'p> a' – robasta

答えて

2

this fiddleを参照してくださいには、次のようにjQueryのセレクタを使用しています。

var paragraphNestedLinks = $('p >a'); 
paragraphNestedLinks.each(function(index, value){ 
alert(value); 
});​ 

この例は、単に警告ボックス内の段落でネストされた3つの各リンクが表示されます。

また、HTMLを修正する必要があります。リンクはうまく形成されていません。下記を参照してください:

some text <a href="https://sample.com">Link Text</a>some text 
<p> some text1 <a href="https://example1.com">Link Text</a></p> 
<p> some text 2<a href="https://example2.com">Link Text</a></p> 
<p> some text 3<a href="https://example3.com">Link Text</a></p> 
some text <a href="https://sample.com">Link Text</a>some text​ 
関連する問題