亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Regex > 正文

通過Java正則表達式去掉SQL代碼中回車換行和多余空格

2020-03-22 18:14:42
字體:
來源:轉載
供稿:網友
復制代碼 代碼如下:
html' target='_blank'>public static void main(String[] args) {
String sql = "SELECT * FROM /n" +
" `testdb`.`foo` LIMIT 0, 100";
String s = "SELECT * FROM `testdb`.`foo` LIMIT 0, 100";
String sql2 = Pattern.compile(" {2,}").matcher(s).replaceAll(" ");
String sql3 = s.replaceAll(" {2,}"," ");
String sql4 = sql.replace('/r', ' ').replace('/n', ' ').replaceAll(" {2,}"," ");;
String sql5 = sql.replace('/r', ' ').replace('/n', ' ').replaceAll(" {2,}?"," ");;
String sql6 = sql.replace('/r', ' ').replace('/n', ' ').replaceAll(" {2,}+"," ");;
System.out.println(sql2);
System.out.println(sql3);
System.out.println(sql4);
System.out.println(sql5);
System.out.println(sql6);
}

輸出結果:
復制代碼 代碼如下:
SELECT * FROM `testdb`.`foo` LIMIT 0, 100
SELECT * FROM `testdb`.`foo` LIMIT 0, 100
SELECT * FROM `testdb`.`foo` LIMIT 0, 100
SELECT * FROM `testdb`.`foo` LIMIT 0, 100
SELECT * FROM `testdb`.`foo` LIMIT 0, 100
[code]
Process finished with exit code 0
結果可以看出,有一個是沒有去掉多余空格的。

可見java中的正則式,同樣含義的還有多重寫法,呵呵!其實主要是不同數量詞匹配模式在作怪:

原版API文檔中寫道:

Greedy 數量詞

X? X,一次或一次也沒有
X* X,零次或多次
X+ X,一次或多次
X{n} X,恰好 n 次
X{n,} X,至少 n 次
X{n,m} X,至少 n 次,但是不超過 m 次

Reluctant 數量詞

X?? X,一次或一次也沒有
X*? X,零次或多次
X+? X,一次或多次
X{n}? X,恰好 n 次
X{n,}? X,至少 n 次
X{n,m}? X,至少 n 次,但是不超過 m 次

Possessive 數量詞

X?+ X,一次或一次也沒有
X*+ X,零次或多次
X++ X,一次或多次
X{n}+ X,恰好 n 次
X{n,}+ X,至少 n 次
X{n,m}+ X,至少 n 次,但是不超過 m 次


但是,沒有對三種方式進行更詳細的說明,其實三種模式的區別如下:

Greedy :嘗試找到最長的匹配。
Reluctant :嘗試找到最短的匹配。
Possessive :也嘗試找到最長的匹配。

盡管greedy和possessive迫使一個matcher在進行第一次匹配之前讀取整個的text,greedy常常導致為了找到一個match進行多次嘗試,然而possessive讓一個matcher僅嘗試一個match一次。

下面是一個我工具中的方法:
[code]
/**
* 判斷一條SQL語句是否已經是分頁的SQL
*
* @param sql 源SQL
* @return 是已經分頁的SQL時返回ture,否則返回False;
*/
public boolean isAlreadySegmentSQL(String sql) {
return sql.replace('/r', ' ').replace('/n', ' ').replaceAll(" {2,}", " ").matches("(?i).+LIMIT [//d+ *|//d *, *//d+].+");
}

還是正則功能強悍??!

補充:
下面這個兩個注視的正則式,和第三個語意一樣的:
復制代碼 代碼如下:
// regList.put("(?i)bit//([2-9]//)//z", "byte[]");
// regList.put("(?i)bit//(//d{2,}//)//z", "byte[]");
regList.put("(?i)bit//((//d{2,}|[2-9])//)//z", "byte[]");

本文出自 “熔 巖” 博客
PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美福利视频在线观看| 国产精品久久久久7777婷婷| 国产在线视频欧美| 欧美一区二区.| 国内精品久久久久久久久| 久久视频在线直播| 国产精品自产拍高潮在线观看| 成人中文字幕+乱码+中文字幕| 亚洲欧美日韩国产中文专区| 亚洲电影免费观看高清完整版在线| 欧美激情在线一区| 国产精品一区二区三区毛片淫片| 2023亚洲男人天堂| 亚洲精品视频免费在线观看| 久久福利视频网| 亚洲乱亚洲乱妇无码| 4438全国成人免费| 96精品久久久久中文字幕| 亚洲欧美综合区自拍另类| 欧美激情中文字幕在线| 欧美肥老妇视频| 欧美另类69精品久久久久9999| 亚洲第一男人天堂| 日本精品一区二区三区在线播放视频| 亚洲国产婷婷香蕉久久久久久| 日韩欧美一区二区三区久久| 久久久电影免费观看完整版| 夜夜嗨av一区二区三区免费区| 热久久99这里有精品| 91国偷自产一区二区三区的观看方式| 原创国产精品91| www欧美xxxx| 神马国产精品影院av| 欧美性xxxx18| 国产精品国内视频| 亚洲国产美女久久久久| 欧美最猛性xxxxx亚洲精品| 日韩亚洲一区二区| 色播久久人人爽人人爽人人片视av| 国产成人拍精品视频午夜网站| 国产精品视频色| 久久精品中文字幕电影| 久久久亚洲国产天美传媒修理工| 久久久91精品国产| 欧美成人精品xxx| 日日噜噜噜夜夜爽亚洲精品| 久久久在线观看| 亚洲最大的成人网| 精品国产一区二区三区四区在线观看| 久久久久久亚洲精品中文字幕| 国产91网红主播在线观看| 国产福利成人在线| 国产自产女人91一区在线观看| 欧美一区二区三区精品电影| 国产999精品久久久| 国产视频福利一区| 91免费人成网站在线观看18| 国产91色在线播放| 亚洲欧洲国产伦综合| 按摩亚洲人久久| 亚洲最大中文字幕| 尤物yw午夜国产精品视频| 91久久精品国产91久久| 欧美黑人xxxⅹ高潮交| 日韩中文理论片| 久久精品男人天堂| 91青草视频久久| 日韩最新免费不卡| 国产精品久久久久久久午夜| 亚洲v日韩v综合v精品v| 国产日韩精品一区二区| 亚洲国产精品久久久久久| 久久国产精品久久久| 亚洲女成人图区| 欧美日韩国产va另类| 亚洲国产日韩一区| 91精品国产自产在线老师啪| 日本老师69xxx| 欧美性xxxxxxxxx| 久久久噜噜噜久久| 日韩av在线免播放器| 国产精品一区二区久久久| 日韩有码在线观看| 亚洲性69xxxbbb| 久久av红桃一区二区小说| 精品国产欧美一区二区三区成人| 亚洲精品午夜精品| 亚洲精品福利免费在线观看| 欧美与欧洲交xxxx免费观看| 91亚洲精品在线观看| 久久韩剧网电视剧| 亚洲第一色中文字幕| www欧美xxxx| 国内精品视频久久| 国产精品久久久久久久电影| 亚洲视频日韩精品| 久久久精品免费视频| 欧美中文在线字幕| 国产成人精品亚洲精品| 亚洲一区亚洲二区亚洲三区| 国产美女直播视频一区| 日本精品一区二区三区在线| 中文字幕日韩在线视频| 岛国精品视频在线播放| 亚洲精品自拍第一页| 日韩**中文字幕毛片| 国产大片精品免费永久看nba| 欧美老女人性生活| 久久影院资源站| 欧美精品性视频| 久久久www成人免费精品张筱雨| 国产婷婷成人久久av免费高清| 欧美视频裸体精品| 久久久久久久久久久91| 91欧美激情另类亚洲| 日韩一区二区三区xxxx| 久久免费少妇高潮久久精品99| 欧美激情综合色| 久久国产精品久久久久久久久久| 久久久久久久久久久av| 日韩精品视频免费在线观看| 丰满岳妇乱一区二区三区| 中文字幕精品在线视频| 欧美成人午夜影院| 亚洲一区第一页| 亚洲午夜国产成人av电影男同| 欧美黑人巨大xxx极品| 亚洲国产精品悠悠久久琪琪| 91精品视频免费看| 欧美精品日韩三级| 久久久国产在线视频| 久久久久国产一区二区三区| 播播国产欧美激情| 欧美激情欧美激情在线五月| 亚洲精品aⅴ中文字幕乱码| 欧美性猛交xxxx| 亚洲男人天堂久| 欧美日韩国产综合视频在线观看中文| 欧美主播福利视频| 国产午夜精品免费一区二区三区| 久久精品一本久久99精品| 久久久久久97| 欧美精品制服第一页| 欧美成人精品在线观看| 夜夜嗨av色综合久久久综合网| 国产精品入口日韩视频大尺度| 中文字幕亚洲图片| 亚洲无线码在线一区观看| 成人欧美在线观看| 国产精品9999| 91香蕉嫩草神马影院在线观看| 久久精品一区中文字幕| 色噜噜久久综合伊人一本| 深夜福利日韩在线看| 日韩国产中文字幕| 国产精品欧美日韩久久| 欧美日韩在线影院| 亚洲精品一区二三区不卡| 久久久久久久亚洲精品| 国产一区二区三区18| 97国产真实伦对白精彩视频8| 亚洲精品美女在线观看播放| 久久精品国产精品亚洲| 欧美性生活大片免费观看网址|