URLに含まれる可能性がある文字列は?
こんにちは、よろしくお願いいたします。
※カテゴリーが分からなかったのでこちらに質問させていただきました。
カテ違いならご指摘下さい。
複数行のテキストファイルの内容からURLを抽出するエクセルVBAを作成しようとしています。
(質問の趣旨はエクセルVBAについてではありません)
各行の内容はURLのみの行、URLが他の文字列に挟まれている行、URLは全く含まれていない行
があります。
URLがハイパーリンクされないようにするため、あるいはURLとなされないようにするために
ttpやtpで始まるものは無視してよいです。
「ht tp」や「h ttp」としたものはURLとみなします。(スペースを削除するので問題とならない)
問題となっているのは、httpが含まれると判断した行を「http」で区切った右側のどこまでを
URLと看做すか、です。
そこでネット検索してみましたが、「URLで使用できない文字列」というのはいくつか見つかり
ましが、たとえば、予約語なのでURLに使用できない文字列は使用できないだけであってURLに
は含まれる可能性があります。
「URLに含まれる可能性がある文字列」を調べたいのですがネット検索で見つかった物は明確
に示したものが見つからなかった(検索の仕方が悪かった、あるいは明確に示したものがあって
も見方が悪くて見落としていた、というのもあるかと思います)ので開発者や詳しい者でなくて
も理解できるように書かれたHPがあれば紹介していただきたいです。直接解説していただくの
は大いに歓迎します。
いままでネット検索して見たことがあるページです。
見てもいまいち理解できませんでした。
http://datatracker.ietf.org/doc/rfc3986/
http://datatracker.ietf.org/doc/rfc3986/?include_text=1
http://jbpe.tripod.com/rfcj/rfc2396.ej.sjis.txt
http://okwave.jp/qa/q247115.html
http://www.ipentec.com/document/document.aspx?page=web-url-invalid-char&culture=ja-jp
http://www.ipentec.com/document/document.aspx?page=web-url-invalid-char&culture=ja-jp
↑を見た限りでは、URLに含まれる可能性がある文字列は
問題なく使える文字列
A~Z
A~z
0~9
使用可能な文字列
-
_
.
!
*
'
(
)
予約語として定義されている文字
使用できるがディレクトリ名やファイル名には使用できない
;
/
?
:
@
&
=
+
$
,
%
ところが、
>URLに含めることのできない文字
>以下の文字はURLに含まれない文字です。
\
'
|
`
^
"
<
>
)
(
}
{
]
[
と書いてあり、
)
(
は「使用可能な文字列」と「URLに含めることのできない文字」
の両方に書かれており混乱しております。
結局のところ、URLに含まれる可能性がある文字列が把握しきれ
ておりません。
ご教示よろしくお願いいたします。
お礼
お礼が遅くなり申し訳ございませんでした。ありがとうございます。そういえば、そうですよね・・。My-SQLのuser名は基本データとして扱われるんですよね・・。おかしいな・・。phpからsql文を使ってデータベース作成とuser登録処理をしてるんですが・・。なぜか一部のユーザ名が登録できないんです・・。""で囲んでなかったかな・・。確認してみたいと思います。