EM_AUTOURLDETECTで日本語 – プログラミング – Home

通知
すべてクリア

[解決済] EM_AUTOURLDETECTで日本語


tty
 tty
(@tty)
ゲスト
結合: 23年前
投稿: 7
Topic starter  

はじめまして。

現在、リッチテキストに EM_AUTOURLDETECT を設定し、URL自動検出を行っています。
英数のみのファイル、URLなら問題ないのですが、日本語が含まれると自動検出してくれ
ません。
URLは仕方ないとして(最近では日本語ドメインもありますが)ファイルやフォルダに日
本語が使われる事は多々ありますよね?

EM_AUTOURLDETECTのヘルプを見ると「空白を含まないもの」とあります。
2バイト文字も自動検出する方法をご存知の方、もしくは違う方法をご存知の方、この打
開策を教えてください。よろしくお願いします


引用未解決
トピックタグ
YuO
 YuO
(@YuO)
ゲスト
結合: 24年前
投稿: 252
 

URLにASCII(の一部の文字)以外って含めることができましたっけ。

エスケープしないといけないのでは?


返信引用
tty
 tty
(@tty)
ゲスト
結合: 23年前
投稿: 7
Topic starter  

イントラネット環境で使用する、グループウェア(のような物)を作ってまして…

実際URLで2バイト文字を使用することは殆ど無いのですが、
ファイルサーバにあるファイルにハイパーリンクを張るときなどに困っております。


返信引用
YuO
 YuO
(@YuO)
ゲスト
結合: 24年前
投稿: 252
 

とりあえず,RFC1738見てみましたが,
> fileurl = file:// [ host | localhost ] / fpath
> fpath = fsegment *[ / fsegment ]
> fsegment = *[ uchar | ? | : | @ | & | = ]
> uchar = unreserved | escape
> unreserved = alpha | digit | safe | extra
> safe = $ | - | _ | . | +
> extra = ! | * | ' | ( | ) | ,
> escape = % hex hex
#host, alpha, digit, hexは省略
となっています。

つまり,2バイト文字はURLに含まれません。
%使ってエスケープすれば処理してくれるのでは?
これはスペースも一緒で,
file://localhost/C:/Program Files/
は不正なURLで,
file://localhost/C:/Program%20Files/
は正当なURL(C:\Program Files\)です。


返信引用
tty
 tty
(@tty)
ゲスト
結合: 23年前
投稿: 7
Topic starter  

YuOさんお付き合いくださってありがとうございます。
VC初心者なので、エスケープというのがわかりませんが、ちょっと調べてみます。

ありがとうございました。


返信引用
tty
 tty
(@tty)
ゲスト
結合: 23年前
投稿: 7
Topic starter  

解決済みにするの忘れてました


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました