`

shell expr 字符串操作命令

阅读更多

1.字符串的长度;声明一个字符串var="hfasdjfhasjd fhsahdfasjdfh",var1="kkkkkkkkk"

echo ${#var}(未声明或未定义的变量其长度为0)

expr length "$var"

expr length $var1

双引号的作用:当变量指代的字符串值有空格存在时,使用引号,若无则不使用。

2.字符串索引:expr index $var $subvar

值得注意的是 expr index 命令匹配的$subvar中的任意一个字符第一次在$var中出现的位置,不像通常我们所用的java,javascript等语言那样去匹配$subvar中的第一个字符在$var中首次出现的位置

如:var3="i know that you are not in the room with his girlfriend."

expr index "$var3" "are"

10

expr length "i know th"

9

由上可以看出expr index 索引的是单个字符的位置

再看

 expr index "$var3" "kick"

1

可以看出它索引的是kick中i的位置,与其是否为第一个字符无关

 expr index "$var3" ”pp"

0

当字符串中无法检索到子串中的任意一个字符时,返回位置索引 0

 expr index "$var3" ” "

2

用于检索空格,必须用引号引用

索引是要求字母大小区分写的

3:expr match $var $subvar

在var的开头匹配subvar返回匹配的subvar的长度,若subvar在的var开头匹配失败返回0,subvar可以字符串,正则表达式,需要完全匹配,否则返回匹配结果0

注意:expr match 在var与subvar匹配时,var的首个字符与subvar的首个字符要匹配,否则返回0,退出本条命令。

如:var3="who know that you are not in the room with his girlfriend."

expr match "$var3" who # 返回匹配的字符串长度3

expr match "$var3" w* # 返回整个的字符串长度

expr match "$var3" hello # 返回匹配的字符串长度0

expr match "$var3" whr # 返回匹配的字符串长度0

 

0
1
分享到:
评论

相关推荐

    Shell字符串截取的详细方法

    一、Linux shell 截取字符变量的前8位...二、按指定的字符串截取1、第一种方法:${varible##*string} 从左向右截取最后一个string后的字符串${varible#*string}从左向右截取第一个string后的字符串${varible%%string*}从

    shell编程中的字符串截取方法小结

    一、Gnu Linux shell 截取字符变量的前8位,有方法如下: 1.expr substr “$a” 1 8 ...${varible##*string} 从左向右截取最后一个string后的字符串 ${varible#*string}从左向右截取第一个string后的字符串 ${varible%

    Shell脚本计算字符串长度和判断字符串为空小技巧

    一些需要注意的脚本问题 计算字符串长度可用的三种方法: 代码如下: echo “$str”|awk ‘{print length($0)}’ expr length “$str” ... 您可能感兴趣的文章:用Shell判断字符串包含关系的方法小结Shel

    Shell获取字符串长度的多种方法总结

    主要给大家总结分享了关于Shell获取字符串长度的多种方法,包括了利用${#str}、利用awk的length方法、利用awk的NF项、利用wc的-L参数、利用expr的length方法以及利用expr的$str : ".*"技巧来实现方法示例,需要的...

    Shell脚本中计算字符串长度的5种方法

    有时在Linux操作系统中需要计算某个字符串的长度,通过查询资料整理了下目前Shell中获取字符串的长度的多种方法,在这里分享给大家,方法如下: 方法1: 使用wc -L命令 wc -L可以获取到当前行的长度,因此对于单独行...

    shell浅谈之六字符串和文件处理.docx

    Bash Shell提供了很多字符串和文件处理的命令。如awk、expr、grep、sed等命令,还有文件的排序、合并和分割等一系列的操作命令。grep、sed和awk内容比较多故单独列出,本文只涉及字符串的处理和部分文本处理命令。

    总结的7个shell字符串操作方法和实例分享

    每一种语言都有他独自的字符串操作方法,shell也一样,下面以以例子的方式,简单介绍常用方法。 1,取得字符串长度 代码如下: string=abc12342341 //等号二边不要有空格 echo ${#string} //结果11 expr length $...

    Linux expr命令用法详解

    expr命令是一个手工命令行计数器,用于在UNIX/LINUX下求表达式变量的值,一般用于整数值,也可用于字符串。 语法 expr 表达式 表达式说明: 用空格隔开每个项; 用 / (反斜杠) 放在 shell 特定的字符前面; 对包含...

    Bash Shell字符串操作小结

    1. 取长度 代码如下:str=”abcd”expr length $str # 4echo ${#str} # 4expr “$str” : “.*” # ... 选取子串 代码如下:str=”abcdef”expr substr “$str” 1 3 # 从第一个位置开始取3个字符, abcexpr substr

    shell编程和unix命令

    本书共分五部分,详细介绍了shell编程技巧,各种UNIX命令及语法,还涉及了UNIX下的文字处理以及少量的系统管理问题。本书内容全面、文字简洁流畅,适合Shell编程人员学习、参考。 目 录 译者序 前言 第一部分 ...

    shell 编程指南pdf

    7.2 在行首以^匹配字符串或字符序列 50 7.3 在行尾以$匹配字符串或字符 51 7.4 使用*匹配字符串中的单字符或其重复 序列 51 7.5 使用\屏蔽一个特殊字符的含义 52 7.6 使用[]匹配一个范围或集合 52 7.7 使用\{\}匹配...

    expr命令 命令行计数器

    expr命令的英文全称是“expression”,即是表达式的意思,作用是一个命令行的计数器,常用于在UNIX/LINUX系统中求表达式变量的值,一般用于整数值,也可用于字符串。 语法格式:expr [表达式] 常用参数: 空格 ...

    LINUX与UNIX SHELL编程指南(很全)

    7.4 使用*匹配字符串中的单字符或其重复 序列 51 7.5 使用\屏蔽一个特殊字符的含义 52 7.6 使用[]匹配一个范围或集合 52 7.7 使用\{\}匹配模式结果出现的次数 53 7.8 小结 55 第8章 grep家族 56 8.1 grep 57 8.1.1 ...

    Linux与unix shell编程指南

    本书共分五部分,详细介绍了shell编程技巧,各种UNIX命令及语法,还涉及了UNIX下的文字处理以及少量的系统管理问题。本书内容全面、文字简洁流畅,适合Shell编程人员学习、参考。 目 录 译者序 前言 第一部分 shell ...

    绝版经典《Linux与UNIX Shell编程指南》

    7.4 使用*匹配字符串中的单字符或其重复 序列 51 7.5 使用\屏蔽一个特殊字符的含义 52 7.6 使用[]匹配一个范围或集合 52 7.7 使用\{\}匹配模式结果出现的次数 53 7.8 小结 55 第8章 grep家族 56 8.1 grep 57 8.1.1 ...

    shell教程-30章,下了之后会让你大吃一惊,相当好

    7.4 使用*匹配字符串中的单字符或其重复 序列 51 7.5 使用\屏蔽一个特殊字符的含义 52 7.6 使用[]匹配一个范围或集合 52 7.7 使用\{\}匹配模式结果出现的次数 53 7.8 小结 55 第8章 grep家族 56 8.1 grep 57 8.1.1 ...

    LINUX与UNIX SHELL编程指南 高清PDF

    本书共分五部分,详细介绍了shell编程技巧,各种UNIX命令及语法,还涉及了UNIX下的文字处理以及少量的系统管理问题。本书内容全面、文字简洁流畅,适合Shell编程人员学习、参考。 目 录 译者序 前言 第一部分 shell...

    Linux与Unix Shell编程指南(PDF格式,共30章)

    本书共分五部分,详细介绍了shell编程技巧,各种UNIX命令及语法,还涉及了UNIX下的文字处理以及少量的系统管理问题。本书内容全面、文字简洁流畅,适合Shell编程人员学习、参考。 目 录 译者序 前言 第一部分 ...

    UNIX Handbook

    1.grep匹配 etc services文件中以ftp字符串开头的哪些文本行 21 2.grep匹配以system文本结尾的行 21 3.grep匹配仅包含一个#字符的行 21 4.grep匹配以<abc>或者[abc]开头的行 21 5.grep匹配以Ftp或者ftp...

Global site tag (gtag.js) - Google Analytics