精華區beta PCman 關於我們 聯絡資訊
原來超連結問題是要這樣解決的.... 查看了 Linux 上的 Gnome terminal 程式碼,原來他的做法,跟我猜的一樣 難怪他可以完整支援超連結點選 (當然他也不可能做到支援多行網址) 不敢相信他真的是用 regular expression 去搜尋超連結,這實在是太沒效率了! 我之前就想過可以用 regular expression ,但是這實在太複雜了,又比較沒效率 何況,讓使用者用 regular expression 來設定那不如叫他們不要用算了 regular expression 是一種表示搜尋條件的特殊語法,對一般人來說根本看不懂 熟析 unix 操作的高手們也許很喜歡用,但要一般人去習慣用那種東西,那是沒可能的 他在每一行當中搜尋符合這樣特徵的東西,就當做超連結處理 "(((news|telnet|nttp|file|http|ftp|https)://([-A-Za-z0-9]+(:[-A-Za-z0-9,?; .:/!%$^*&~\"#']+)?@)?)|(www|ftp)[-A-Za-z0-9]*\\.)[-A-Za-z0-9.]+(:[0-9]+)? /[-A-Za-z0-9_$.+!*(),;:@&=?/~#%]*[^]'.}>) \t\r\n,\\\]" 這才是偵測超連結的完整方式,但問題是...有人知道這在幹麻嗎? 我查過 regular expression的文件,只是覺得真的要這樣搞太小題大作,而且真沒效率 而如果不寫死在程式裡面...那就意味著使用者要用上面那一串字來進行超連結設定 這鬼才會用...只是要打個 BBS 有需要這樣嗎? 還是別太誇張.... 這樣又陷入苦思之中了,要用簡單的設定達成類似的功能好像沒可能... 唯一的方法還是只有超連結偵測方式寫死在程式裡,不能讓使用者改了?? 其實真的說起來每種超連結偵測方式確實都不同,要讓使用者設定可能性很低 這也是為何其他軟體也只支援 http:// ftp:// 等常見連結,並且寫死在程式中 否則使用者就要直接用 regular expreession 來進行設定了! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.129.59.3
yuehyang:6^^ 再接再勵 ^o^ 推218.164.124.238 02/10
mou3:雖然我看不太懂,但很感謝你的PCman,加油^^ 推 203.204.162.85 02/10
NelsonT:我看得懂耶 XD 推 61.227.144.57 02/13