全部分类
移动开发与应用
WEB前端
架构与运维
程序设计
数据库
操作系统
热点技术
综合
将三个字母表示的月份分解成首字母大写,其他小写
828阅读 0评论
2009-08-03
greendays
分类:
[] [] [] [] []
侠客
CU编号: 1271882
注册:2009-6-19
最后登录: 2009-08-03
帖子:
精华:0
状态:
...在线...
[] [] [
博客
]
[]
发表于 2009-8-3 13:46
十二个月
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
NOV
DEC
tmp_date.log文件中的内容为
24-APR-09
要求:将三个字母表示的月份分解成首字母大写,其他小写。下面是我写的代码,但是在同时包含多个字母JFMASOND时分解错误,如JAN返回JAN.JUN返回JuN,不知道如何改?
str_month=$(sed 1d tmp_date.log|awk '{print substr($1,4,3)}'|sed '1,$y/[JFMASOND]ABCDEFGHIJKLMNOPQRSTUVWXYZ/[JFMASOND]abcdefghijklmnopqrstuvwxyz/')
echo 'str_month = ' $str_month
您对本贴的看法:
| | |
(Tim)
法师
CU编号: 465018
注册:2006-9-13
最后登录: 2009-08-03
帖子:
精华:0
来自:长春
状态:
...在线...
[] [] [
博客
]
[]
发表于 2009-8-3 13:58
这个意思?
echo '24-APR-09' | sed -r 's/-([A-Z])([A-Z]{2})-/-\1\L\2-/g'
您对本贴的看法:
__________________________________
记住该记住的,忘记该忘记的。改变能改变的,接受不能改变的。
| | |
侠客
CU编号: 1271882
注册:2009-6-19
最后登录: 2009-08-03
帖子:
精华:0
状态:
...在线...
[] [] [
博客
]
[]
发表于 2009-8-3 14:06
QUOTE:
原帖由
ly5066113
于 2009-8-3 13:58 发表
这个意思?
echo '24-APR-09' | sed -r 's/-([A-Z])([A-Z]{2})-/-\1\L\2-/g'
能不能这样呀echo 'APR' | sed -r 's/-([A-Z])([A-Z]{2})-/-\1\L\2-/g'
就返回月份即可
结果为Apr
您对本贴的看法:
| | |
(Lemon)
大天使
CU编号: 615557
注册:2007-9-11
最后登录: 2009-08-03
帖子:
精华:0
状态:
...在线...
[] [] [
博客
]
[]
发表于 2009-8-3 14:11
QUOTE:
原帖由
pecker_zhao
于 2009-8-3 14:06 发表
能不能这样呀echo 'APR' | sed -r 's/-([A-Z])([A-Z]{2})-/-\1\L\2-/g'
就返回月份即可
结果为Apr
echo 'APR' | sed -r 's/([A-Z])([A-Z]{2})/\1\L\2/g'
您对本贴的看法:
| | |
侠客
CU编号: 1271882
注册:2009-6-19
最后登录: 2009-08-03
帖子:
精华:0
状态:
...在线...
[] [] [
博客
]
[]
发表于 2009-8-3 14:26
可以了,谢谢
不知道哪有sed awk方面的书呀,学习一下!
您对本贴的看法:
| | |
天使
CU编号: 75493
注册:2003-7-25
最后登录: 2009-08-03
帖子:
精华:0
来自:Hangzhou
状态:
...在线...
[] [] [
博客
]
[]
发表于 2009-8-3 14:29
CODE:
echo '24-APR-09' |awk -F'-' '{print substr($2,1,1)tolower(substr($2,2))}'
您对本贴的看法:
| | |
» » »
上一篇:
如何在文本中提取部分行
下一篇:
首字母大写,其他小写