instr函式(instr)

instr函式

instr一般指本詞條

instr是一個非常好用的字元串處理函式,幾乎所有的字元串分隔都用到此函式。instr函式在Oracle/PLSQL中是返回要截取的字元串在源字元串中的位置。

基本介紹

  • 中文名:instr截取函式
  • 外文名:instr
  • 作用:返回要截取的字元串
  • 類型:字元串處理函式
  • 可選參數:start
instr語法,VB和VBS,參數,返回值,示例,

instr語法

語法如下:
instr( string1, string2, start_position,nth_appearance )
string1
源字元串,要在此字元串中查找。
string2
要在string1中查找的字元串 。
start_position
代表string1 的哪個位置開始查找。此參數可選,如果省略默認為1. 字元串索引從1開始。如果此參數為正,從左到右開始檢索,如果此參數為負,從右到左檢索,返回要查找的字元串在源字元串中的開始索引。
nth_appearance
代表要查找第幾次出現的string2. 此參數可選,如果省略,默認為 1.如果為負數系統會報錯。
注意:
位置索引號從1開始。
如果String2在String1中沒有找到,instr函式返回0。 示例:
SELECT instr('syranmo','s') FROM dual; -- 返回 1
SELECT instr('syranmo','ra') FROM dual; -- 返回 3
SELECT instr('syran mo','at',1,2) FROM dual; -- 返回 0
instr函式

VB和VBS

InStr([start,]string1,string2[,compare])
表達式:
InStr([起始,] 接受搜尋的字元串,被搜尋的字元串[,匹配模式])

參數

  • start
    可選參數。為數值表達式,設定每次搜尋的起點。如果省略,將從第一個字元的位置開始。如果 start 包含 Null,將發生錯誤。如果指定了 compare 參數,則一定要有 start 參數。
  • string1
    必要參數。接受搜尋的字元串表達式
  • string2
    必要參數。被搜尋的字元串表達式。
  • compare
    可選參數。指定字元串比較。如果 compare 是 Null,將發生錯誤。如果省略 compare,Option Compare 的設定將決定比較的類型。
Compare 參數設定為:
常數
描述
vbUseCompareOption
-1
使用Option Compare 語句設定執行一個比較。
vbBinaryCompare
0
執行一個二進制比較(即 英文字元區分大小寫)。
vbTextCompare
1
執行一個按照原文的比較(即 英文字元區分大小寫)。
vbDatabaseCompare
-2
僅適用於Microsoft Access,執行一個基於資料庫信息比較。

返回值

從 Start 位置開始,在 String1 中尋找 String2 ,如果沒有找到,則返回0。如果 String1 或 String2 為Null,則返回Null,其他情況返回 String2 在 String1 中的起始位置。

示例

本示例使用 InStr 函式來查找某字元串在另一個字元串中首次出現的位置。
DimSearchString,SearchChar,MyPosSearchString="XXpXXpXXPXXP"'被搜尋的字元串。SearchChar="P"'要查找字元串"P"。'-------------------------------------'從第四個字元開始,以文本比較的方式找起。返回值為6(小寫p)。'小寫p和大寫P在文本比較下是一樣的。MyPos=Instr(4,SearchString,SearchChar,1)'--------------------------------------'從第一個字元開始,以二進制比較的方式找起。返回值為9(大寫P)。'小寫p和大寫P在二進制比較下是不一樣的。MyPos=Instr(1,SearchString,SearchChar,0)'--------------------------------------'預設的比對方式為二進制比較(最後一個參數可省略)。MyPos=Instr(SearchString,SearchChar)'返回9。MyPos=Instr(1,SearchString,"W")'返回0。

相關詞條

熱門詞條

聯絡我們