誰かが私にこのpの内容を取得する正規表現のコードを手伝ってもらえますか?
<p class="bc_shirt_name">101</p>
ありがとう
マークアップが適切に形成されている場合は、 DOMParserを使用することをお勧めします。
var parser = new DOMParser();
var doc = parser.parseFromString('<p class="bc_shirt_name">101</p>', "application/xml");
var contents = doc.documentElement.textContent;
これは、XHTMLだけでなく、ほとんどすべてのXMLで機能します。これも使えます<tag>foo</tag>
。
これがデモンストレーションです:http://jsfiddle.net/vEeXX/
ブラウザはHTMLを解析できるはずですよね?
var div = document.createElement("div");
div.innerHTML = '<p class="bc_shirt_name">101</p>';
var p = div.getElementsByTagName("p")[0];
var html = p.innerHTML; // content as html
var text = p.textContent || p.innerText; // content as plain text
多くの方法がありますが、元の質問で尋ねられた正規表現を使用する方法は次のとおりです。
var html = "<stuff><p class=\"bc_shirt_name\">101</p></stuff>";
var matches = html.match(/<p\s+class="bc_shirt_name">[\S\s]*?<\/p>/gi);
matches = matches[0].replace(/(<\/?[^>]+>)/gi, ''); // Strip HTML tags?
alert(matches);
JSFiddleデモ: http ://jsfiddle.net/tGTb7/
var str = "<p class="bc_shirt_name">101</p>";
var match, result = "",
regex = /<p\s+class="bc_shirt_name">(.*?)<\/p>/ig;
while (match = regex.exec(str)) {
result += match[1];
}
alert(result);
結果変数には、必要なデータが含まれます。お役に立てれば。