JSEMTS搜尋引擎
 


'**************************************
' for :Advanced SQL Query Builder
'**************************************
Copyright (C) 1999, Lewis Moten. All rights reserved. Any modifications must be sent to me so that I may review and add them to the procedure as I feel fit.
'**************************************
' Name: Advanced SQL Query Builder
' Description:This code lets visitors to
' your site perform complex queries. Users
' may choose if specific words (or phrases
' ) must or must not match - or if they ar
' e optional (default).
' By: Lewis Moten
'
'
' Inputs:asFieldsAry - An array of field
' names in database to search.
asKeywords - The actual query that the user types to query the database.
Keyword Search Parameters
To find fields that may have a word in them
OR roger
| roger
roger
To find fields that must match a word
AND roger
+ roger
& roger
To find fields that must not match a word
NOT roger
- roger
Also use phrases
+"rogers dog" -cat
+(rogers dog)
'
' Returns:Returns just the SQL arguments
' within a group that are to be places aft
' er the WHERE Clause.
'
'Assumes:It is assumed that the user kno
' ws how to build an array of field names
' and understand that syntax of SQL querie
' s along with how to connect to databases
' . This procedure has only been tested wi
' th SQL Servers and Access databases.
'
'Side Effects:This function uses the Reg
' Exp object that was introduced in vbScri
' pt 5.0 that came out with Internet Explo
' rer 5.0. The vbScript can be installed w
' ithout installing Internet Explorer by g
' oing to the subdirectory "Scripting" on
' the microsoft site.
'This code is copyrighted and has limite
' d warranties.
'Please see http://www.Planet-Source-Cod
' e.com/xq/ASP/txtCodeId.6297/lngWId.4/qx/
' vb/scripts/ShowCode.htm
'for details.
'**************************************

Function BuildQuery(ByRef asFieldAry, ByVal asKeyWords)
Dim loRegExp ' Regular Expression Object (requires vbScript 5.0)
Dim loRequiredWords ' Words that MUST match within a search
Dim loUnwantedWords ' Words that MUST NOT match within a search
Dim loOptionalWords ' Words that AT LEAST ONE must match
Dim lsSQL ' Arguments of SQL query that is returned (WHERE __Arguments___)
Dim lnIndex ' Index of an array
Dim lsKeyword ' Keyword or Phrase being worked with
' An error may occur within your script
' Even if you do not call this function
' If you do not have vbScript 5.0 installed on your server
' because of the next line.

' Create regular Expression
Set loRegExp = New RegExp
' Match more then once
loRegExp.Global = True

' Every letter is created equal (uppercase-lowercase = same)
loRegExp.IgnoreCase = True
' pull out keywords and phrases that MUST match within a search
loRegExp.Pattern = "((AND|[+&])\s*[\(\[\{""].*[\)\]\}""])|((AND\s|[+&])\s*\b[-\w']+\b)"
Set loRequiredWords = loRegExp.Execute(asKeywords)
asKeywords = loRegExp.Replace(asKeywords, "")
' pull out keywords and phrases that MUST NOT match within a search
loRegExp.Pattern = "(((NOT|[-])\s*)?[\(\[\{""].*[\)\]\}""])|(((NOT\s+|[-])\s*)\b[-\w']+\b)"
Set loUnwantedWords = loRegExp.Execute(asKeywords)
asKeywords = loRegExp.Replace(asKeywords, "")
' pull out keywords and phrases that must have AT LEAST ONE match within a search
loRegExp.Pattern = "(((OR|[|])\s*)?[\(\[\{""].*[\)\]\}""])|(((OR\s+|[|])\s*)?\b[-\w']+\b)"
Set loOptionalWords = loRegExp.Execute(asKeywords)
asKeywords = loRegExp.Replace(asKeywords, "")
' If at least 1 required word was found
If Not loRequiredWords.Count = 0 Then

' REQUIRED

' Open a new group
lsSQL = lsSQL & "("

' loop through each keyword/phrase
For lnIndex = 0 To loRequiredWords.Count - 1
' Pull the keyword out
lsKeyword = loRequiredWords.Item(lnIndex).Value
' Strip boolean language
loRegExp.Pattern = "^(AND|[+&])\s*"
lsKeyword = loRegExp.Replace(lsKeyword, "")
loRegExp.Pattern = "[()""\[\]{}]"
lsKeyword = loRegExp.Replace(lsKeyword, "")

' Double Quote Keyword
lsKeyword = Replace(lsKeyword, "'", "''")
' If we are not working with the first keyword
If Not lnIndex = 0 Then

' append logic before the keyword
lsSQL = lsSQL & " AND "

End If ' Not lnIndex = 0

' Append SQL to search for the keyword within all searchable fields
lsSQL = lsSQL & "(" & Join(asFieldAry, " LIKE '%" & lsKeyword & "%' OR ") & " LIKE '%" & lsKeyword & "%')"
Next ' lnIndex

' Close the group
lsSQL = lsSQL & ")"
End If ' Not loRequiredWords.Count = 0
' If at least 1 optional word was found
If Not loOptionalWords.Count = 0 Then
' OPTIONAL
' If the SQL query is not yet defined
If lsSQL = "" Then

' Open a new group
lsSQL = "("

' Else SQL query has content
Else

' Append logic before the group
lsSQL = lsSQL & " AND ("

End If ' lsSQL = ""
' loop through each keyword/phrase
For lnIndex = 0 To loOptionalWords.Count - 1
' Pull the keyword out
lsKeyword = loOptionalWords.Item(lnIndex).Value
' Strip Boolean Language
loRegExp.Pattern = "^(OR|[|])\s*"
lsKeyword = loRegExp.Replace(lsKeyword, "")
loRegExp.Pattern = "[()""\[\]{}]"
lsKeyword = loRegExp.Replace(lsKeyword, "")

' Double Quote the keyword
lsKeyword = Replace(lsKeyword, "'", "''")

' If we are not working with the first keyword
If Not lnIndex = 0 Then

' Append Logic before the keyword search
lsSQL = lsSQL & " OR "

End If ' Not lnIndex = 0

' Append SQL to search for the keyword within all searchable fields
lsSQL = lsSQL & "(" & Join(asFieldAry, " LIKE '%" & lsKeyword & "%' OR ") & " LIKE '%" & lsKeyword & "%')"
Next ' lnIndex

' Close the group
lsSQL = lsSQL & ")"

End If ' Not loOptionalWords.Count = 0
' If at least 1 Unwanted word was found
If Not loUnwantedWords.Count = 0 Then
' UNWANTED
' If the SQL query is not yet defined
If lsSQL = "" Then

' Open a new group
lsSQL = "("

' Else SQL query has content
Else

' Append logic before the group
lsSQL = lsSQL & " AND NOT ("

End If ' lsSQL = ""
' loop through each keyword/phrase
For lnIndex = 0 To loUnwantedWords.Count - 1
' Pull the keyword out
lsKeyword = loUnWantedWords.Item(lnIndex).Value
' Strip Boolean Language
loRegExp.Pattern = "^(NOT|[-])\s*"
lsKeyword = loRegExp.Replace(lsKeyword, "")
loRegExp.Pattern = "[()""\[\]{}]"
lsKeyword = loRegExp.Replace(lsKeyword, "")

' Double Quote the keyword
lsKeyword = Replace(lsKeyword, "'", "''")
' If we are not working with the first keyword
If Not lnIndex = 0 Then
' Append Logic before the keyword search
lsSQL = lsSQL & " OR "
End If ' Not lnIndex = 0

' Append SQL to search for the keyword within all searchable fields
lsSQL = lsSQL & "(" & Join(asFieldAry, " LIKE '%" & lsKeyword & "%' OR ") & " LIKE '%" & lsKeyword & "%')"
Next ' lnIndex

' Close the group
lsSQL = lsSQL & ")"
End If ' Not loUnwantedWords.Count = 0
' If arguments were created
If Not lsSQL = "" Then

' Encapsilate Arguments as a group
' in case other aguments are to be appended
lsSQL = "(" & lsSQL & ")"

End If ' Not lsSQL = ""

' Return the results
BuildQuery = lsSQL
End Function ' BuildQuery






搜尋引擎讓我們程式搜尋結果更加完美
  • 如果您覺得該文件有幫助到您,煩請按下我
  • 如果您覺得該文件是一個一無是處的文件,也煩請按下我

  • 搜尋引擎該文件您看起來是亂碼嗎?您可以切換編碼方式試試看!ISO-8859-1 | latin1 | euc-kr | euc-jp | CP936 | CP950 | UTF-8 | GB2312 | BIG5 |
    搜尋引擎本文件可能涉及色情、暴力,按我申請移除該文件

    搜尋引擎網址長?按我產生分享用短址

    ©2026 JSEMTS

    https://tw.search.yahoo.com/search;_ylt=A8tUwZJ2QE1YaVcAUmFr1gt.;_ylc=X1MDMjExNDcwNTAwMwRfcgMyBGZyA3lmcC10LTkwMC1zLXR3BGdwcmlkAwRuX3JzbHQDMARuX3N1Z2cDMARvcmlnaW4DdHcuc2VhcmNoLnlhaG9vLmNvbQRwb3MDMARwcXN0cgMEcHFzdHJsAwRxc3RybAM4NARxdWVyeQMlRTglQjYlODUlRTUlOEYlQUYlRTYlODQlOUIlRTclOUElODQlRTUlQUYlQjYlRTUlQUYlQjYlMjAlRTglODMlQTElRTUlQUUlODklRTUlQTglOUMEdF9zdG1wAzE0ODE0NTc3OTM-?p=%E8%B6%85%E5%8F%AF%E6%84%9B%E7%9A%84%E5%AF%B6%E5%AF%B6+%E8%83%A1%E5%AE%89%E5%A8%9C&fr2=sb-top-tw.search&fr=yfp-t-900-s-tw&rrjfid=3404405 https://tw.search.yahoo.com/search;_ylt=A8tUwZJ2QE1YaVcAUmFr1gt.;_ylc=X1MDMjExNDcwNTAwMwRfcgMyBGZyA3lmcC10LTkwMC1zLXR3BGdwcmlkAwRuX3JzbHQDMARuX3N1Z2cDMARvcmlnaW4DdHcuc2VhcmNoLnlhaG9vLmNvbQRwb3MDMARwcXN0cgMEcHFzdHJsAwRxc3RybAM4NARxdWVyeQMlRTglQjYlODUlRTUlOEYlQUYlRTYlODQlOUIlRTclOUElODQlRTUlQUYlQjYlRTUlQUYlQjYlMjAlRTglODMlQTElRTUlQUUlODklRTUlQTglOUMEdF9zdG1wAzE0ODE0NTc3OTM-?p=%E8%B6%85%E5%8F%AF%E6%84%9B%E7%9A%84%E5%AF%B6%E5%AF%B6+%E8%83%A1%E5%AE%89%E5%A8%9C&fr2=sb-top-tw.search&fr=yfp-t-900-s-tw&rrjfid=6310221 https://tw.search.yahoo.com/search;_ylt=A8tUwZJ2QE1YaVcAUmFr1gt.;_ylc=X1MDMjExNDcwNTAwMwRfcgMyBGZyA3lmcC10LTkwMC1zLXR3BGdwcmlkAwRuX3JzbHQDMARuX3N1Z2cDMARvcmlnaW4DdHcuc2VhcmNoLnlhaG9vLmNvbQRwb3MDMARwcXN0cgMEcHFzdHJsAwRxc3RybAM4NARxdWVyeQMlRTglQjYlODUlRTUlOEYlQUYlRTYlODQlOUIlRTclOUElODQlRTUlQUYlQjYlRTUlQUYlQjYlMjAlRTglODMlQTElRTUlQUUlODklRTUlQTglOUMEdF9zdG1wAzE0ODE0NTc3OTM-?p=%E8%B6%85%E5%8F%AF%E6%84%9B%E7%9A%84%E5%AF%B6%E5%AF%B6+%E8%83%A1%E5%AE%89%E5%A8%9C&fr2=sb-top-tw.search&fr=yfp-t-900-s-tw&rrjfid=7202148 https://tw.search.yahoo.com/search;_ylt=A8tUwYgkQU1YcXoAUE9r1gt.;_ylc=X1MDMjExNDcwNTAwMwRfcgMyBGZyA3lmcC10LTkwMC10dwRncHJpZAMxWU5tY2FYMVFGQ2ZvUXZGN1N0bzVBBG5fcnNsdAMwBG5fc3VnZwMwBG9yaWdpbgN0dy5zZWFyY2gueWFob28uY29tBHBvcwMwBHBxc3RyAwRwcXN0cmwDBHFzdHJsAzQ4BHF1ZXJ5AyVFNiVBRCVBMSVFNiVBRCU4QyUyMCVFNSVCMCU4OCVFNiU4MyU4NSVFNSU5QyU5OAR0X3N0bXADMTQ4MTQ1Nzk3Ng--?p=%E6%AD%A1%E6%AD%8C+%E5%B0%88%E6%83%85%E5%9C%98&fr2=sb-top-tw.search&fr=yfp-t-900-tw&rrjfid=3857964 https://tw.search.yahoo.com/search;_ylt=A8tUwYgkQU1YcXoAUE9r1gt.;_ylc=X1MDMjExNDcwNTAwMwRfcgMyBGZyA3lmcC10LTkwMC10dwRncHJpZAMxWU5tY2FYMVFGQ2ZvUXZGN1N0bzVBBG5fcnNsdAMwBG5fc3VnZwMwBG9yaWdpbgN0dy5zZWFyY2gueWFob28uY29tBHBvcwMwBHBxc3RyAwRwcXN0cmwDBHFzdHJsAzQ4BHF1ZXJ5AyVFNiVBRCVBMSVFNiVBRCU4QyUyMCVFNSVCMCU4OCVFNiU4MyU4NSVFNSU5QyU5OAR0X3N0bXADMTQ4MTQ1Nzk3Ng--?p=%E6%AD%A1%E6%AD%8C+%E5%B0%88%E6%83%85%E5%9C%98&fr2=sb-top-tw.search&fr=yfp-t-900-tw&rrjfid=2944335 https://tw.search.yahoo.com/search;_ylt=A8tUwZJ2QE1YaVcAUmFr1gt.;_ylc=X1MDMjExNDcwNTAwMwRfcgMyBGZyA3lmcC10LTkwMC1zLXR3BGdwcmlkAwRuX3JzbHQDMARuX3N1Z2cDMARvcmlnaW4DdHcuc2VhcmNoLnlhaG9vLmNvbQRwb3MDMARwcXN0cgMEcHFzdHJsAwRxc3RybAM4NARxdWVyeQMlRTglQjYlODUlRTUlOEYlQUYlRTYlODQlOUIlRTclOUElODQlRTUlQUYlQjYlRTUlQUYlQjYlMjAlRTglODMlQTElRTUlQUUlODklRTUlQTglOUMEdF9zdG1wAzE0ODE0NTc3OTM-?p=%E8%B6%85%E5%8F%AF%E6%84%9B%E7%9A%84%E5%AF%B6%E5%AF%B6+%E8%83%A1%E5%AE%89%E5%A8%9C&fr2=sb-top-tw.search&fr=yfp-t-900-s-tw&rrjfid=2239040 [教學] LINE電腦版更新版本後英文字型變小問題之解決Freeroloccitane[前往]hilai-foodsweicker[前往][前往][前往]肯特城天堂Ra2diyv0795Jiaoyiyidtravelbingbankchbmoneydj99kuboecosiaCfbwzMir2[前往][前往]travel4u[前往]yes.hkb[前往]student[前往][前往]tianmuzicyunshophkeverton[前往]chimeimuseumOsho[前往]newhopefoodDesignCap[教學] Windows 10 自動登入relay[前往]coco4kwiki.mbalibmirrormedia[前往]NvyouXiaodingdongWuxhqiGMAPO4ooo[前往]ydcoatingBriian[前往][分享] 工研院的老闆許友耕在65歲生日感言[前往][前往][前往][前往][前往][前往][前往][前往]eclifepipewikiisexsexpressroom.hotaimotor9x9[前往][前往][前往]heheshangwupkthinkontologyacademy[前往][教學] Windows 10 Wifi 斷線問題解決Kingofkingsexplorerstartfromzero-twhttp://kserver3.asuscomm.com/[前往]5156sharewordpressnfumcae.nfu[前往][前往][前往]kingstone[前往][機密] 2010~2018年至中台情報人員名單Angelcgyongrenqianyouamazonugg[前往]歸檔星球landtop[教學] 常用NTP伺服器YilubbsOnlineHostucsd[前往]crusalisZian100pitnfshwiki.tfcismercedes-benzdiodes[前往]SteamjpmedgssEvents18[教學] 應用程式變服務(RunAsSvc)[分享] 使用Ping來確認網路速度[前往]TwitterDmhgVCE 官方網站Visual Cheat Editor(Visual CE),VCErollinggreenstravel.yam[前往]stardewvalleywiki[前往]mpiinfo.talkcatchplay86bbkMaterhd銀貂台灣官方網站銀貂台灣官方網站[前往]sti[前往][前往][前往]EpisodevoicetubeGilineage[前往]a2hosted[前往][前往]texturemaker[資訊] 梗圖分享Holkeeaspinehaookongminghu[前往]FaceBook21tian[前往][技術] 真正關閉Windows的UAC[機密] Misia Syu 許杏如(iwjtovgo)機密資料附件(2023)asics性向測試secret.nchumomoshop[教學] 系統還原出現錯誤0X81000203解決[機密] 2020事故報告aotBeloader[前往][前往][前往]Niagarachinese[前往][前往][前往]Twstayokapi.books[前往]godaddyformosasoft[分享] 什麼是SCIwiki.kmu[前往]xn--kbto70f[前往]lzdsxxbxiaoditechdocs.dify.ai[分享] 女友月經來男生必做「7件暖事」[前往]Game735elearning.tafmpchomeThreads[前往][前往][教學] 安裝VB6在Windows10系統[教學] Windows ISO Downloader0752snywaws.amazonstrongltdusjjiufengls[前往]fujikong3taiwanpay[前往][前往][前往]housuxi[教學] 停用WINDOWS更新方式[前往]28wdqplaymobilinfozingala[教學] 螢幕解析度(2K,4K,8K)gogoro[前往]Jiebbs[前往]Acdccollege[前往]eleganthome-decorchickptkocpc[前往][機密] 2023台灣北部女士官私密照Yanyiku[前往][教學] Windows 家用版開啟 Hyper-VMomo365Tucaptions[前往][前往]Wphltheknowledgebase[前往]tvbs[資訊] 專情團[技術] Windows服務權限調整dreammall[前往]旗袍旗袍[前往]Carrd[前往][前往]OnMyOjiGamebeamsReUrl[前往]Kdbang[技術] Windows10消腫教學livenationcht-ptLineageincCqzhuoyuan[前往]COLabchatgptAMHJiaoyilewdreview.spaceaiinvest.sinotradeMem168new[前往][教學] Pi(圓周率)10萬位,100,000 Digits of Pitake-a-note.store[前往][前往]JimdoSexline998ragic[前往][前往]ticlbloggadoresdonggoudi[前往][前往]OzportalMeworksghanartkaoji[前往]wiki.52poke[前往]ICloudYoutube下載Youtube下載[前往]contrelelementalcraft[前往]ariomyfonelittleradar[前往]search.yahoogrok[前往]Crazyskbto70fhttp://as2026.wuaze.com/airbnbfrankknowasp01.ez-showcoupondmIT TOP Blog