※ ChatGPTを利用し、要約された質問です(原文:HTMLのソースの取得・正規表現)
HTMLのソースからURLを正規表現で抽出する方法と問題点
このQ&Aのポイント
HTMLのソースからURLを正規表現で抽出する方法と問題点について。javascriptのコードを使用してHTMLのソースを取得し、正規表現でマッチしたURLを書き出す方法を説明する。
test-1では、正規表現によって「http://abc.com/」が抽出され、正常に動作した。しかし、test-2では正規表現の結果が表示されず、問題が発生した。その原因や解決方法についても解説する。
初心者の方でも理解しやすいように、具体的なコードと一緒に解説している。HTMLソースの取得や正規表現の使用方法、なぜtest-2で問題が発生したのかを詳しく説明している。
プログラム自体始めて間もない初心者です。
javascriptでHTMLのソースを取得して、正規表現でマッチしたURLを書き出したいと思います。
取得したソースから正規表現で抽出はできましたが、さらに手を加えると機能しませんでした。
下記test-1では「http://abc.com/」と表示されましたので思った通りに動きました。
しかし、test-2では「http」と表示されると思っていたところ、表示されませんでした。
この違いはなんでしょうか?
////////////////////
test-1
<html>
<head>
<script type="text/javascript">
function test(){
aaa = document.getElementsByTagName("html")[0].innerHTML;
bbb = aaa.match(/http:\/\/abc\.com\//);
document.write(bbb);
}
</script>
</head>
<body>
<input type="button" onclick="test()">
<a href="http://abc.com/">
</body>
</html>
////////////////////
test-2
function test(){
aaa = document.getElementsByTagName("html")[0].innerHTML;
bbb = aaa.match(/http:\/\/abc\.com\//);
ccc = bbb.match(/http/);
document.write(ccc);
}
お礼
無事理解できました。 この度は誠にありがとう御座いました。