正則表達式小技巧,sql中in的字符串處理


工作中我經常寫sql,當寫帶in的語句時,需要敲好多單引號,逗號,敲寫起來容易易出錯。因此,我寫了一個小工具,處理這種繁瑣工作。原理簡單,利用正則表達式匹配、替換。

先看界面,一個html頁面,包含三個js函數。下面我會一一介紹:

一、 sql_in()按鈕

 為多個字符串加上單引號和逗號,結果可以直接用於sql中的in語句,效果如下:

按鈕中的js函數:

function sql_in1(){

    //獲取需要處理的字段,即上面的textarea里面的內容
    var sqltext = document.getElementById('sqltext').value;
    // 將開頭和結尾的空格去掉
    sqltext = sqltext.replace(/(^\s*)|(\s*$)/g, "");
    //將每行結尾的回車替換成一個單引號、逗號、回車,再加一個單引號
    sqltext = sqltext.replace(/"/g,'"+"\\""+"').replace(/[\r\n]/g,'\'\,\n\'');
    //將結果的開頭和結尾加上單引號
    sqltext ="'" +sqltext +"'";
    //將結果輸出到下面的textarea
    document.getElementById('javatext').value = sqltext;

}

可直接將處理結果復制到sql語句中:

select * from table1 where id in ('30029',
'30021',
'30022',
'30027',
'30020')

二、sql_in(,)按鈕

效果如下:

 按鈕js代碼:

function sql_in2(){

    var sqltext = document.getElementById('sqltext').value;
    // 將開頭和結尾的空格去掉
    sqltext = sqltext.replace(/(^\s)|(\s$)/g, "");
    //將逗號替換成一個單引號、逗號、回車,再加一個單引號
    sqltext = sqltext.replace(/[,]/g,'',\n'');
    //將結果的開頭和結尾加上單引號
    sqltext ="'" +sqltext +"'";
    document.getElementById('javatext').value = sqltext;
}

三、js_in(,)按鈕

效果如下:

  按鈕js代碼:

function js_in(){

    var sqltext = document.getElementById('sqltext').value;
    // 將開頭和結尾的空格去掉
    sqltext = sqltext.replace(/(^\s)|(\s$)/g, "");
    //將每行結尾的回車替換成一個逗號
    sqltext = sqltext.replace(/[\r\n]/g,',');
    document.getElementById('javatext').value = sqltext;

}

 

以上是我工作中經常遇到的需要處理的字符串格式,歡迎熱心的小伙伴補充其他常見的形式。

下面是這個工具的下載鏈接,歡迎各位下載:

 https://files.cnblogs.com/files/iceriver315/sqlconvert2.rar?t=1645951574

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM