oracle按特定字符截取字符串_妙用字符串的替换和截取让Shell脚本精准得到你心中的那个“她”...
生活随笔
收集整理的這篇文章主要介紹了
oracle按特定字符截取字符串_妙用字符串的替换和截取让Shell脚本精准得到你心中的那个“她”...
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
目的
shell腳本中各種條件的判斷,都需要對判定條件精準(zhǔn)把控,而字符串在腳本中用的是最多的,怎樣準(zhǔn)確的獲取你想要的字符串至關(guān)重要。本文詳細(xì)介紹了shell腳本中妙用字符串的替換和截取,讓你精準(zhǔn)獲得你心中的那個她。
截斷
例子:file=/dir1/dir2/dir3/my.file.txt
#拿掉第一條/及其左邊的字符串${file#*/}結(jié)果:dir1/dir2/dir3/my.file.txt #拿掉最后一條/及其左邊的字符串${file##*/}結(jié)果:my.file.txt #拿掉第一個.及其左邊的字符串${file#*.}結(jié)果:file.txt #拿掉最后一個.及其左邊的字符串${file##*.}結(jié)果:txt#拿掉最后條/及其右邊的字符串${file%/*}結(jié)果:/dir1/dir2/dir3#拿掉第一條/及其右邊的字符串${file%%/*}結(jié)果:(空值)#拿掉最后一個.及其右邊的字符串${file%.*}結(jié)果:/dir1/dir2/dir3/my.file#拿掉第一個.及其右邊的字符串${file%%.*}結(jié)果:/dir1/dir2/dir3/my記憶方法很簡單:
#表示去掉左邊, ##去掉最后一個
%表示去掉右邊, %%去掉第一個
提取
單一符號是最小匹配,兩個符號是最大匹配。
#提取最左邊的 5 個字節(jié)${file:0:5/dir1${file:5:5}:提取第 5 個字節(jié)右邊的連續(xù) 5 個字節(jié):/dir2替換
#將第一個 dir 提換為 path${file/dir/path}結(jié)果:/path1/dir2/dir3/my.file.txt#將全部 dir 提換為 path${file//dir/path}結(jié)果:/path1/path2/path3/my.file.txt針對不同的變量狀態(tài)賦值(沒設(shè)定、空值、非空值):
#若$file沒有設(shè)定,則使用my.file.txt作返回值。(空值及非空值時不作處理)${file-my.file.txt}#若$file沒有設(shè)定或為空值,則使用my.file.txt作返回值。(非空值時不作處理)${file:-my.file.txt}#若$file設(shè)為空值或非空值,均使用my.file.txt作返回值。(沒設(shè)定時不作處理)${file+my.file.txt}#若$file為非空值,則使用my.file.txt作返回值。(沒設(shè)定及空值時不作處理)${file:+my.file.txt}#若$file沒設(shè)定,則使用my.file.txt作返回值,同時將$file 賦值為 my.file.txt。(空值及非空值時不作處理)${file=my.file.txt}#若$file沒設(shè)定或為空值,則使用my.file.txt作返回值,同時將 $file 賦值為 my.file.txt。(非空值時不作處理)${file:=my.file.txt}#若$file沒設(shè)定,則將my.file.txt輸出至 STDERR。(空值及非空值時不作處理)${file?my.file.txt}#若$file沒設(shè)定或為空值,則將my.file.txt輸出至STDERR。(非空值時不作處理)${file:?my.file.txt}注意: ":+"的情況是不包含空值的.":-", ":="等只要有號就是包含空值(null).變量的長度
${#file}數(shù)組運算
A=(a b c def)${A[@]} 或 ${A[*]} #可得到 a b c def (全部組數(shù))${A[0]} #可得到 a (第一個組數(shù)),${A[1]} 則為第二個組數(shù)...${#A[@]} 或 ${#A[*]} #可得到 4 (全部組數(shù)數(shù)量)${#A[0]} #可得到 1 (即第一個組數(shù)(a)的長度),${#A[3]} 可得到 3 (第四個組數(shù)(def)的長度)總結(jié)
以上是生活随笔為你收集整理的oracle按特定字符截取字符串_妙用字符串的替换和截取让Shell脚本精准得到你心中的那个“她”...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 万分之2.5是百分之多少
- 下一篇: python携程酒店评论_携程酒店评论爬