ORACLE從字串中過濾出數字~~

junsansi發表於2007-04-08

方法1:

Select translate('254名字性別介紹','1234567890名字性別介紹’','1234567890') From dual

方法2:

看俺的java實現

首先:
create or replace and compile java source named stringutil as

import Java.io.*;
import Java.sql.*;

public class StringUtil
{
public static String filterStr2Num(String str){
String tmpstr = str;
String savestr;
String result = "";
for (int i=0;isavestr = tmpstr.substring(i,i+1);
if (StringUtil.isNumeric(savestr)){
result+=savestr;
}

}
return result;

}

public static boolean isNumeric(String str){
try{
Integer.valueOf(str);
return true;
}catch(Exception e){
return false;
}

}

}

然後:
create or replace function Java_filterStr2Num(str In Varchar) return varchar2 as
LANGUAGE JAVA
NAME 'StringUtil.filterStr2Num(java.lang.String) return java.lang.String';

再然後,無敵啦~~~
Select java_filterStr2Num('254名字性345345別介紹') From dual;


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7607759/viewspace-22208/,如需轉載,請註明出處,否則將追究法律責任。

相關文章