主頁 > 知識(shí)庫 > Shell腳本實(shí)現(xiàn)查找字符串中某字符最后出現(xiàn)的位置

Shell腳本實(shí)現(xiàn)查找字符串中某字符最后出現(xiàn)的位置

熱門標(biāo)簽:電銷機(jī)器人 劍魚 衛(wèi)星地圖標(biāo)注地名 申請公司400電話要注意什么 地圖標(biāo)注輻射圖案 寧波智能外呼系統(tǒng)公司 安裝外呼系統(tǒng)費(fèi)用 曲阜400電話辦理 聯(lián)通電話機(jī)器人怎么接 奧維互動(dòng)地圖標(biāo)注參數(shù)

需要對字符串查找其中某個(gè)字符最后出現(xiàn)的位置,這個(gè)在PHP (strrpos)或者Perl (rindex)里面都有現(xiàn)成函數(shù)可用的功能,在Shell里面居然一時(shí)想不出個(gè)道道來。在論壇上發(fā)貼也沒人解答(不知道是問題太簡單還是真的很高深...)。

因?yàn)槭虑榫o急等不得,于是求救大學(xué)同學(xué)。Pacman不愧是個(gè)中高手,三兩下點(diǎn)醒夢中人:

rindex.sh代碼:

復(fù)制代碼 代碼如下:

#!/bin/bash

strToCheck=$1;
charToSearch=$2;

let pos=`echo "$strToCheck" | awk -F ''$charToSearch'' '{printf "%d", length($0)-length($NF)}'`

echo "char $charToSearch lastpos is: $pos"


使用示例:
復(fù)制代碼 代碼如下:

[zeal]$ sh rindex.sh www.zeali.net .
char . lastpos is: 10

Calfen則提供了一種比較自力更生的方式:自己用c寫了個(gè)小程序來實(shí)現(xiàn)rindex的功能,gcc rindex.c -o rindex 之后shell就擁有可以調(diào)用的rindex了 :)
rindex.c代碼:

復(fù)制代碼 代碼如下:

#include strings.h>
int main(int argc, char *argv[]){
    char* wholeWord;
    char subChar;
    char* subWord;

    int ret;

    if(argc!=3){
        printf("Use:rindex word char\n");
        exit(0);
    }
    wholeWord=argv[1];
    subChar=*argv[2];
    subWord=rindex(wholeWord,subChar);

    if(0 == subWord)
        ret = 0;
    else
        ret = (subWord-wholeWord+1);
    printf("%d\n",ret);
}

您可能感興趣的文章:
  • Shell獲取字符串長度的多種方法總結(jié)
  • 用Shell判斷字符串包含關(guān)系的方法小結(jié)
  • linux shell字符串內(nèi)置的常用操作(獲取長度、查找、替換)
  • Shell中判斷字符串是否為數(shù)字的6種方法分享
  • Shell腳本計(jì)算字符串長度和判斷字符串為空小技巧
  • shell編程中的字符串截取方法小結(jié)
  • Shell腳本實(shí)現(xiàn)簡單分割字符串
  • Linux shell數(shù)組循環(huán)的實(shí)例詳解
  • linux shell實(shí)現(xiàn)求一個(gè)多維數(shù)組中的最大和最小值
  • shell腳本編程之?dāng)?shù)組
  • Shell中創(chuàng)建序列和數(shù)組(list、array)的方法
  • shell腳本字符串和數(shù)組的使用操作方法

標(biāo)簽:遵義 大興安嶺 江西 仙桃 三門峽 安康 大慶 上饒

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Shell腳本實(shí)現(xiàn)查找字符串中某字符最后出現(xiàn)的位置》,本文關(guān)鍵詞  Shell,腳本,實(shí)現(xiàn),查找,字符串,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Shell腳本實(shí)現(xiàn)查找字符串中某字符最后出現(xiàn)的位置》相關(guān)的同類信息!
  • 本頁收集關(guān)于Shell腳本實(shí)現(xiàn)查找字符串中某字符最后出現(xiàn)的位置的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章