<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

    業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
    獲得字段數字部分
    ?
    ?
    ??? 在平常的數據處理中,特別是數據清洗階段,要獲取字段中數字部分往往都是經常會用到的要求。所以專門找了一下有哪幾種方法可以實現這個功能。10g中已經提供了正則表達式的功能,所以這個事情變得方便了很多,但是還是比較喜歡用translate函數來獲取的這個方法,非常巧妙,這個是轉載的地址: http://zhouwf0726.itpub.net/post/9689/191406
    ?
    --該腳本可以直接拷貝運行
    --現有字符串'23456中國3-00=.,45',想得到結果2345630045
    ?
    ?
    ?
    --方法一:translate函數
    select translate('23456中國3-00=.,45','0123456789'||'23456中國3-00=.,45','0123456789') from dual;
    ?
    ?
    --方法二:自定義函數
    create or replace function f_filter_str(var_str varchar) return varchar
    is
    var_str_new varchar2(2000);
    begin
    for i in 1..length(var_str) loop
    if ascii(substr(var_str,i,1))>=48 and ascii(substr(var_str,i,1))<=57 then
    var_str_new := var_str_new || substr(var_str,i,1);
    end if;
    end loop;
    return var_str_new;
    end f_filter_str;
    /
    ?
    select f_filter_str('23456中國3-00=.,45') from dual;
    ?
    ?
    --方法三:正則表達式
    --oracle10g以上版本
    select regexp_replace('23456中國3-00=.,45','[^0-9]') from dual;
    ?
    ?
    --方法四:
    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;i<tmpstr.length();i++){
    savestr = tmpstr.substring(i,i+1);
    if (StringUtil.isNumeric(savestr)){
    result+=savestr;
    }
    ?
    }
    return result;
    ?
    }
    ?
    public static String filterStr2Str(String str){
    String tmpstr = str;
    String savestr;
    String result = "";
    for (int i=0;i<tmpstr.length();i++){
    savestr = 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';
    create or replace function Java_filterStr2Str(str In Varchar) return varchar2 as
    LANGUAGE JAVA
    NAME 'StringUtil.filterStr2Str(java.lang.String) return java.lang.String';
    ?
    --再然后
    Select java_filterStr2Num('254名字性345345別介紹') From dual; --取數字
    Select java_filterStr2Str('254名字性345345別介紹') From dual; --取文字
    ?
    ?
    ?
    posted on 2008-09-06 19:27 decode360 閱讀(242) 評論(0)  編輯  收藏 所屬分類: 05.SQL
    主站蜘蛛池模板: 成av免费大片黄在线观看 | 国产大片91精品免费观看男同| 久久精品国产精品亚洲毛片| a毛片免费全部在线播放**| 亚洲免费观看视频| a级毛片无码免费真人久久| 久久亚洲国产精品一区二区| 国产精品网站在线观看免费传媒| 亚洲av一综合av一区| 无码国产精品一区二区免费模式| 亚洲精品视频在线| 亚洲免费福利视频| 亚洲精品123区在线观看| 四虎永久精品免费观看| 污视频网站在线观看免费| 在线亚洲精品福利网址导航| 野花香高清在线观看视频播放免费 | 免费观看美女用震蛋喷水的视频| 亚洲国产视频网站| 好男人看视频免费2019中文| 在线观看亚洲电影| 亚洲精品自产拍在线观看| 曰批全过程免费视频网址| 亚洲人成网站在线播放2019| 日韩亚洲国产二区| 香蕉成人免费看片视频app下载| 亚洲欧洲国产视频| 全部免费毛片在线| 久爱免费观看在线网站| 亚洲色成人四虎在线观看| 亚洲国产精品专区在线观看 | 很黄很色很刺激的视频免费| 国产成人亚洲综合在线| 亚洲爆乳无码专区| 成人免费在线视频| 在线涩涩免费观看国产精品| 亚洲一区无码中文字幕乱码| 亚洲精品国精品久久99热| 亚洲电影免费在线观看| 国产精品亚洲专一区二区三区| 久久亚洲国产精品一区二区|