Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1724355
  • 博文数量: 293
  • 博客积分: 10574
  • 博客等级: 上将
  • 技术积分: 5085
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-22 17:00
文章分类

全部博文(293)

文章存档

2011年(27)

2010年(84)

2009年(62)

2008年(120)

我的朋友

分类: LINUX

2010-11-18 09:58:40

在awk里不论字符串还是数字都被视为字符串;请理解“awk 变量“字符串化”是因为所有 awk 变量在内部都是按字符串形式存储的。同时,awk 变量是“简单的”,因为可以对它执行数学操作,且只要变量包含有效数字字符串,awk 会自动处理字符串到数字的转换步骤” 特别地,字符在参与运算时被视为0
 
可以用awk函数实现:strtonum()
 
也可以用下面方法:
awk 字符串连接操作(字符串转数字,数字转字符串)
awk中数据类型,是不需要定义,自适应的。 有时候需要强制转换。我们可以通过下面操作完成。
一、awk字符串转数字
[chengmo@centos5 ~]$ awk 'BEGIN{a="100";b="10test10";print (a+b+0);}'
110
只需要将变量通过”+”连接运算。自动强制将字符串转为整型。非数字变成0,发现第一个非数字字符,后面自动忽略。
 
二、awk数字转为字符串
[chengmo@centos5 ~]$ awk 'BEGIN{a=100;b=100;c=(a""b);print c}'     
100100
只需要将变量与””符号连接起来运算即可。
 
三、awk字符串连接操作
[chengmo@centos5 ~]$ awk 'BEGIN{a="a";b="b";c=(a""b);print c}'     
ab
[chengmo@centos5 ~]$ awk 'BEGIN{a="a";b="b";c=(a+b);print c}' 
0
字符串连接操作通”二“,”+”号操作符。模式强制将左右2边的值转为 数字类型。然后进行操作。
阅读(1917) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-11-18 17:24:32

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com