关于LINUX下面AWK的正则表达式,求解答,在线等
时间:2011-08-02
来源:互联网
awk 'BEGIN {FS=","; OFS=","; chk_part = "xxxxxxxxxx"}
{
split($0, item, ",");
if ((item[2] !~ /\"[0-9]{4}\"/) && (item[1] !~ "^" chk_part)){
chk_part = substr(item[1],1,11);
}
if ((item[2] ~ /\"[0-9]{4}\"/) && (item[1] !~ "^" chk_part)){
print $0
}
} ' $FILE_TMP > $FILE_RSLT_N180_U05
上面的这段程序,(item[1] !~ "^" chk_part)是什么意思?
{
split($0, item, ",");
if ((item[2] !~ /\"[0-9]{4}\"/) && (item[1] !~ "^" chk_part)){
chk_part = substr(item[1],1,11);
}
if ((item[2] ~ /\"[0-9]{4}\"/) && (item[1] !~ "^" chk_part)){
print $0
}
} ' $FILE_TMP > $FILE_RSLT_N180_U05
上面的这段程序,(item[1] !~ "^" chk_part)是什么意思?
作者: TopFelix 发布时间: 2011-08-02
如果item[1]的内容不是以chk_part开头则为真。
我也不确定哦。等待大神解答。。。。。
我也不确定哦。等待大神解答。。。。。
作者: awsqsh 发布时间: 2011-08-02
!~表示与后面的正则表达式不匹配
"^" chk_part应该就是以chk_part开头吧
"^" chk_part应该就是以chk_part开头吧
作者: louyong0571 发布时间: 2011-08-02
同意上面2位
作者: threeleafzerg007 发布时间: 2011-08-02
item是以逗号“,”分隔的一个数组,item[1]很明显是表示的数组的第一个元素(awk里的array下标从1开始)
chk_part 是begin里定义的字符串 "xxxxxxxxxx"
chk_part 是begin里定义的字符串 "xxxxxxxxxx"
作者: joan8363 发布时间: 2011-08-02
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28