awk 字符串函数
awk
提供了许多强大的字符串函数,见下表:
awk
内置字符串函数
gsub(r,s)
在整个
$0
中用
s
替代
r
gsub(r,s,t)
在整个
t
中用
s
替代
r
index(s,t)
返回
s
中字符串
t
的第一位置
length(s)
返回
s
长度
match(s,r)
测试
s
是否包含匹配
r
的字符串
split(s,a,fs)
在
fs
上将
s
分成序列
a
sprint(fmt,exp)
返回经
fmt
格式化后的
exp
sub(r,s)
用
$0
中最左边最长的子串代替
s
substr(s,p)
返回字符串
s
中从
p
开始的后缀部分
substr(s,p,n)
返回字符串
s
中从
p
开始长度为
n
的后缀部分
详细说明一下各个函数的使
用方法。
gsub
函数有点类似于
sed
查找和替换。它允许替换一个字符串或字符为另一个字符串或字
符,并以正则表达式的形式执行。第一个函数作用于记录
$0
,第二
个
gsub
函数允许指定
目标,然而,如果未指定目标,缺省为
$0
。
index(s,t)
函数返回目标字符串
s
中查询字符串
t
的首位置。
length
函数返回字符串
s
字符
长度。
match
函数测试字符串
s
是否包含一个正则表达式
r
定义的匹配。
split
使用域分隔
符
fs
将
字符串
s
划分为指定序列
a
。
sprint
函数类似于
printf
函数
(
以后涉及
)
,
返回基本输出格式
fmt
的
结果字符串
exp
。
sub(r,s)
函数将用
s
替代
$0
中最左边最长的子串,该子串被
(r)
匹配。
sub(s,p)
返回字符串
s
在位置
p
后的后缀。
substr(s,p,n)
同上,并指定子串长度为
n
。
现在看一看
awk
中这些字符串函数的功能。
1.gsub
要在整个记录中替换一个字符串为另一个,使用正则表达式格式,
/
目标模式
/
,替换模式
/
。例如改变学生序号
4842
到
4899
:
$ awk 'gsub('4842/, 4899) {print $0}' grade.txt
J.Troll 07/99 4899 Brown-3 12 26 26
echo "i am hifdafafdst"|awk '{gsub(/am/,"abcc",$0);print $0}'
i abcc hifdafafdst
2.index
查询字符串
s
中
t
出现的第一位置。必须用双引号将字符串括起来。例如返回目标字符串
Bunny
中
ny
出现的第一位置,即字符个数。
$ awk 'BEGIN {print index("Bunny", "ny")} grade.txt
4
3.length
awk 字符串函数的更多相关文章
- awk字符串函数及其意义
awk字符串函数及其意义 awk提供了强大的内置字符串函数,用于实现文本的字符串替换.查找以及分隔等功能. awk字符串函数主要有:gsub.index.length.match.split.sub ...
- awk内置字符串函数 awk 格式化输出
i249 ~ # ps -efl|head -1|awk '$2~/S/{print $2}'Si249 ~ # ps -efl|awk '$2~/S/{print $2}'SSSS printf - ...
- awk 字符串处理函数
awk提供了许多强大的字符串函数,见下表:awk内置字符串函数gsub(r,s) 在整个$0中用s替代rgsub(r,s,t) 在整个t中用s替代rindex(s,t) 返回s中字符 ...
- shell编程系列19--文本处理三剑客之awk中的字符串函数
shell编程系列19--文本处理三剑客之awk中的字符串函数 字符串函数对照表(上) 函数名 解释 函数返回值 length(str) 计算字符串长度 整数长度值 index(str1,str2) ...
- awk 条件及循环语句和字符串函数
条件语句 if(条件表达式) 动作1 else if(条件表达式) 动作2 else 动作3 循环语句: while循环: while(条件表达式) 动作 do while循环: do 动作 whil ...
- awk字符串处理
awk 字符串处理函数 awk提供了许多强大的字符串函数,见下表:awk内置字符串函数gsub(r,s) 在整个$0中用s替代rgsub(r,s,t) 在整个t中用s替代rindex(s, ...
- ThinkPHP 模板substr的截取字符串函数
ThinkPHP 模板substr的截取字符串函数在Common/function.php加上以下代码 /** ** 截取中文字符串 **/ function msubstr($str, $start ...
- SQL字符串函数
LEN() :计算字符串长度(字符的个数.)datalength();//计算字符串所占用的字节数,不属于字符串函数.测试varchar变量与nvarchar变量存储字符串a的区别.见备注1.LOWE ...
- Python3中的字符串函数学习总结
这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...
随机推荐
- 基于Android的rgb七彩环颜色采集器
代码地址如下:http://www.demodashi.com/demo/11892.html 一.前言. 在大学期间,看到这个rgb灯,蛮好奇的,这么漂亮的颜色采集,并且可以同步到设备rbg灯颜色, ...
- Python:Dom生成XML文件(写XML)
http://www.ourunix.org/post/327.html 在python中解析XML文件也有Dom和Sax两种方式,这里先介绍如何是使用Dom解析XML,这一篇文章是Dom生成XML文 ...
- 使用ALAssetsLibrary读取所有照片
一. ALAssetsLibrary 介绍 ALAssetsLibrary 提供了访问iOS设备下”照片”应用下所有照片和视频的接口: 从 ALAssetsLibrary 中可读取所有的相册数据,即 ...
- Devops成功的八大炫酷工具
原文链接:http://www.infoworld.com/article/3031009/devops/8-more-cool-tools-for-devops-success.html 为自动化和 ...
- .NET CORE 2.0小白笔记(五):配置的热更新、配置的框架设计
配置的热更新 什么是热更新:一般来说,我们创建的项目都无法做到热更新:即项目无需重启,修改配置文件后读取到的信息就是修改配置之后的 我们只需要吧项目中用到的IOptions改成IOptionsSnap ...
- macbook 下SDK Manager 的更新[即使Google被屏蔽了也无所谓]
废话少说,直接说操作步骤: 1. 改动/etc/hosts文件: 右键单击Finder,选择前往目录,输入/private/etc/,敲回车键.将文件/etc/hosts复制到桌面(由于权限受限.无法 ...
- linux权限的深入讨论
1. 怎样查看文件的权限 1) 掌握使用ls –l命令查看文件上所设定的权限. drwxr-xr-x. 2 root root 6 May 26 2017 binfmt.d 权限信 ...
- [Hibernate开发之路](4)ID生成策略
一 对象关系数据库映射之Id 被映射的类必须定义相应数据库表主键字段.大多数类有一个JavaBeans风格的属性, 为每个实例包括唯一的标识. <id> 元素定义了该属性到数据库表主键字段 ...
- kafka eagle 使用教程
下载 地址:http://download.smartloli.org/ github:https://github.com/smartloli/kafka-eagle 环境 Windows: 安装J ...
- iOS GCD倒计时
GCD倒计时的好处在于不用考虑是否定时器无法释放的问题,runloop的问题,还有精度更加高 使用GCD创建定时器方法 -(void)startCountDown:(NSInteger)maxTime ...