首页 > 其他 > 详细

字符串提取

时间:2014-02-13 06:14:02      阅读:342      评论:0      收藏:0      [点我收藏+]

 

今天在群里看到一个讨论,对自己很有帮助,就记录下来。

针对一个字符串   1/2/3/4    提取   数字 3    (方法很多种,欢迎大家补充)

echo ‘1/2/3/4‘ | cut -b 5

cut -b 只输出在byte-list区间的bytes,每个TAB和backspace都占1byte

echo ‘1/2/3/4‘ | cut -d / -f 3

cut -d 制定域分隔符  -f  第三个域

echo ‘1/2/3/4‘ | awk -F / ‘{print $3}‘

awk -F 指定域分隔符  print $3 打印第三个域

echo ‘1/2/3/4‘ | sed ‘s#.*/\(.*\)/\(.*\)/.*#\2#‘

echo ‘1/2/3/4‘ | sed -r ‘s#.*/(.*)/(.*)/.*#\2#‘

sed替换就是针对含有括号的内容   \1 表示第一个括号  (.*)   \2 表示第二个括号(.*)

sed -r 表示扩展的正则表达式      第一个括号(.*)相当于2  第二个括号相当于3

这条命令实现的就是把1/2/3/4 替换成 3  

a=‘1/2/3/4‘
echo ${a:4:1}

${a:4:1} 表示提取a字符中 从左边开始第四个字节右边的连续一个字节

本文出自 “慢慢来” 博客,请务必保留此出处http://bookzjw.blog.51cto.com/4122779/1358476

字符串提取

原文:http://bookzjw.blog.51cto.com/4122779/1358476

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!