日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

shell中字符串操作【转】

發布時間:2023/12/6 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 shell中字符串操作【转】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉自:http://blog.chinaunix.net/uid-29091195-id-3974751.html

我們所遇到的編程語言中(匯編除外)都少不了字符串處理函數吧,
當然shell編程也不例外咯,那么下面我們一起來看下shell中字符串
處理的相關操作吧。大概下面的字符串操作可以分為兩種類型,一種
屬于變量替換,另一種屬于繼承unix expr命令吧!
??

1、測試字符串長度${#string}expr length $stringexpr "$string" : '.*'例:#!/bin/bashstr="asfd"echo "${#str}"a=expr length $strecho "a=$a"a=0a=`expr "$str" : '.*'`echo "a=$a"2、匹配字符串開頭的子串長度expr match "$string" '$substring'$substring是一個正則表達式.expr "$string" : '$substring'$substring是一個正則表達式.例:#!/bin/bashstr=abcABC123ABCabcecho `expr match "$str" 'abc[A-Z]*.2'` # 8echo `expr "$str" : 'abc[A-Z]*.2'` # 83、索引expr index $string $substring在字符串$string中所匹配到的$substring第一次所出現的位置.例:#!/bin/bashstr=abcABC123ABCabcecho `expr index "$str" C` # 6 C 字符的位置.echo `expr index "$str" c` # 34、提取子串${string:position}在$string中從位置$position開始提取子串。如果$string是"*"或者"@", 那么將會提取從位置$position開始的位置參數. [1]${string:position:length}在$string中從位置$position開始提取$length長度的子串.例:#!/bin/bashstr="abcABC123ABCabc"echo ${str:0} #輸出abcABC123ABCabcecho ${str:3} #輸出ABC123ABCabc echo ${str:6:3} #輸出1235、子串削除${string#substring}從$string的開頭位置截掉最短匹配的$substring.${string##substring}從$string的開頭位置截掉最長匹配的$substring.例:#!/bin/bashstr="abcABC123ABCabc"echo ${str#a*C} #輸出123ABCabcecho ${str##a*C} #輸出abcecho ${str##a*1} #輸出23ABCabc${string%substring}從$string的結尾位置截掉最短匹配的$substring.${string%%substring}從$string的結尾位置截掉最長匹配的$substring.例:#!/bin/bashstr=abcABC123ABCabcecho ${str%b*c} #輸出 abcABC123ABCa echo ${str%%b*c} #輸出 a 6、子串替換${string/substring/replacement}使用$replacement來替換第一個匹配的$substring.${string//substring/replacement} 使用$replacement來替換所有匹配的$substring.${string/%substring/replacement}如果$substring匹配$string的結尾部分, 那么就用$replacement來替換$substring.${string/#substring/replacement}如果$substring匹配$string的開頭部分, 那么就用$replacement來替換$substring.例:#!/bin/bashstr="abcABC123ABCabc"echo ${str/ABC/&&&} #輸出 abc&&&123ABCabcecho ${str//ABC/&&&&} #輸出 abc&&&&123&&&&abcecho ${str/%abc/&&&} #輸出 abcABC123ABC&&&echo ${str/#abc/&&&} #輸出 &&&ABC123ABCabc

?













本文轉自張昺華-sky博客園博客,原文鏈接:http://www.cnblogs.com/sky-heaven/p/5681899.html,如需轉載請自行聯系原作者

總結

以上是生活随笔為你收集整理的shell中字符串操作【转】的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。