方法一
返回值為null的表示字串,返回值大於等於1的表示有非數字字元
select lengthb(ltrim( '1248346 ', '0123456789 ')) from dual;
或 select lengthb(rtrim( '1248346a ', '0123456789 ')) from dual;
方法二
返回值為null的表示字串,返回值大於等於1的表示有非數字字元
select translate( '123 ', '0123456789 ', ' ') from dual
方法三
如果返回為空指,則全部為數字,反之則含有非數字字元
select lengthb(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace( '0123456789a ', '0 '), '1 '), '2 '), '3 '), '4 '), '5 '), '6 '), '7 '), '8 '), '9 ')) ifnum from dual
方法四
如果是oracle 10g,可以用正規表示式實現
如果返回為0,則表示都是數字,反之,表示有非數字存在
select count( 'a123 ') from dual where regexp_like( 'a123 ', '[^[:digit:]] ')
========================
不建議使用方法三
C 之 判斷乙個字元是否是漢字
判斷乙個字元是不是漢字通常有三種方法 1 用 ascii 碼判斷 2 用漢字的 unicode 編碼範圍判斷 3 用正規表示式判斷。1 用ascii碼判斷 在 ascii碼表中,英文的範圍是0 127,而漢字則是大於127,具體 如下 string text 漢字,abc for int i 0 i...
C 之 判斷乙個字元是否是漢字
判斷乙個字元是不是漢字通常有三種方法 1 用 ascii 碼判斷 2 用漢字的 unicode 編碼範圍判斷 3 用正規表示式判斷。1 用ascii碼判斷 在 ascii碼表中,英文的範圍是0 127,而漢字則是大於127,具體 如下 string text 漢字,abc for int i 0 i...
C 判斷乙個字元是否是字母或數字
isalnum 函式用來檢測乙個字元是否是字母或者十進位制數字。如果僅僅檢測乙個字元是否是字母,可以使用 isalpha 函式 如果僅僅檢測乙個字元是否是十進位制數字,可以使用 isdigit 函式。如果乙個字元被 isalpha 或者 isdigit 檢測後返回 真 那麼它被 isalnum 檢測...