RPAD函式略解

2021-06-28 04:32:10 字數 1501 閱讀 7555

在寫本篇部落格之前,有一點小東西要寫在前面,漢字佔多少個位元組得看你用的是什麼編碼集,如果是gbk和gb2312的話,確實是兩個位元組,在windows平台上會是你預期的兩個位元組。但是在linux平台使用的是utf8字符集,那麼就不一定了,不過,我現在做plsql等東西一般是在win平台上做的,linux只是在安裝weblogic和部署應用程式才去一趟。

rpad函式從右邊對字串使用指定的字元進行填充

語法格式如下rpad(string,padded_length,[pad_string])

string

表示:被填充的字串

padded_length

表示:位元組的長度,是返回的位元組長度的字串,如果這個數量比原字串的位元組長度要短,rpad函式將會把字串擷取成從左到右的n個字元;如果正好是中文要被截斷,那麼這個中文返回的是空格。如:rpad('函式',3) ----返回的是'函 '。

pad_string

是個可選引數,這個字串是要貼上到string的右邊,如果這個引數未寫,rpad函式將會在string的右邊貼上空格。

例如:rpad('tech', 7); 將返回'tech '

rpad('tech', 2); 將返回'te'

rpad('tech', 8, '0'); 將返回'tech0000'

rpad('tech on the net', 15, 'z'); 將返回 'tech on the net'

rpad('tech on the net', 16, 'z'); 將返回 'tech on the netz'

與rpad函式對應的是lpad函式:

語法格式如下:

lpad( string, padded_length, [ pad_string ] )

string

準備被填充的字串;

padded_length

填充之後的字串長度,也就是該函式返回的字串長度,如果這個數量比原字串的長度要短,lpad函式將會把字串擷取成從左到右的n個字元;

pad_string

填充字串,是個可選引數,這個字串是要貼上到string的左邊,如果這個引數未寫,lpad函式將會在string的左邊貼上空格。

示例1:

sql> select lpad('abcde',10,'x') from dual;

lpad('abcde',10,'x')

--------------------

***xxabcde

示例2:

sql> select lpad('abcde',10,'oq') from dual;

lpad('abcde',10,'oq')

---------------------

oqoqoabcde

示例3:

sql> select lpad('abcde',2) from dual;

lpad('abcde',2)

---------------

ablpad和rpad進行截斷時都是從左邊開始截斷的

函式指標略解一二

函式指標 這兩天一直在重新翻看c 的書,發現對很多東西有了新的認識,或者說是懂了很多知識。先來說說函式指標吧,函式指標,顧名思義就是指向函式的指標,而不是指向函式物件的指標。1.形式就像,int pf const int const int 這就是將pf宣告為返回值型別是int的,引數是const ...

KMP演算法略解

前言 本文是我對kmp演算法的臨時理解,用於使我不懷疑kmp演算法的正確性,用著放心。如圖 1 長串與短串進行匹配暴力對齊匹配時,在紅叉號處失配,長串的子串藍串和短串的字首黃串相等。如圖 2 試圖利用已有資訊 黃串等於藍串 來快速尋找短串串頭下一次應該對齊長串的哪個位置,這個位置被描述為 下乙個可能...

斜率優化略解

斜率優化演算法最重要的一步,就是要將狀態轉移方程改寫為y kx b的形式。而這一演算法主要的難點就在於,對於乙個複雜的狀態轉移方程,我們將哪些項將作為y,哪些項最為k和x,哪些項作為b。我們以luogu p3195 hnoi2008 玩具裝箱toy為例來說斜率優化 在本題中,設字首和為sum i 由...