VoyForums
[ Show ]
Support VoyForums
[ Shrink ]
VoyForums Announcement: Programming and providing support for this service has been a labor of love since 1997. We are one of the few services online who values our users' privacy, and have never sold your information. We have even fought hard to defend your privacy in legal cases; however, we've done it with almost no financial support -- paying out of pocket to continue providing the service. Due to the issues imposed on us by advertisers, we also stopped hosting most ads on the forums many years ago. We hope you appreciate our efforts.

Show your support by donating any amount. (Note: We are still technically a for-profit company, so your contribution is not tax-deductible.) PayPal Acct: Feedback:

Donate to VoyForums (PayPal):

Login ] [ Contact Forum Admin ] [ Main index ] [ Post a new message ] [ Search | Check update time ]


[ Next Thread | Previous Thread | Next Message | Previous Message ]

Date Posted: 01:25:21 03/18/00 Sat
Author: Webmaster
Subject: Re: 有PERL/CGI 的問題
In reply to: irene 's message, "有PERL/CGI 的問題" on 23:20:15 03/15/00 Wed

Irene

你好, 遲了回覆你, 對不起o

你可以把

if (($searchline =~ $searchword)

改成

if (($searchline =~ /\Q$searchword/)

\Q 是用來廢除 pattern 內的 metacharacter , 例如 $searchword 內包含"院"字 , 而"院"字包含直線 ( | ) , 但直線是一個 pattern metacharacter , 因此需要用 \Q

\Q 說明網頁:
http://www.perl.com/pub/doc/manual/html/pod/perlre.html

至於第二個 regular expression:

($searchline =~ /\b$searchword/i)

站長也不太肯定它的作用 , 相信它是用來檢查 $searchline 是否以 $searchword 開頭 o 它是不分大小楷的配對 , 並不適合中文字配對 , 例如你打 "夕" 字 , 會配到 "儿" 字 , 因為夕字和儿字的第二個位元組分別是 i 和 I 字

在 Regular Expression 配對中文字 , 還有其它的問題 , 站長可能要到六月才能完成這部份的教學 , 不過你也可以直接用電郵發問的

多謝光臨本站




> 我近日才初學PERL﹐我現在想寫SEARCH
> ENGINE﹐我用以下的CODE來
> SEARCH DATABASE
> if (($searchline =~ $searchword) || ($searchline =~
> /\b$searchword/i))
> $SEARCHLINE 是DATABASE FILE內其中一行﹐例如﹕
> 王菲 當時的月亮 只愛陌生人
> $SEARCHWORD 是要查詢的KEYWORD
> 問題是某幾個字﹐例如「彭」「許」「院」等等有(|符號)的字
> 便查
> 詢不到﹐但你的SEARCH
> ENGINE可以查到這些字﹐怎麼可以解決這個問題?

[ Next Thread | Previous Thread | Next Message | Previous Message ]

Post a message:
This forum requires an account to post.
[ Create Account ]
[ Login ]
[ Contact Forum Admin ]


Forum timezone: GMT-8
VF Version: 3.00b, ConfDB:
Before posting please read our privacy policy.
VoyForums(tm) is a Free Service from Voyager Info-Systems.
Copyright © 1998-2019 Voyager Info-Systems. All Rights Reserved.