LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 567|回复: 1

sed的替换命令's///'的一个问题

[复制链接]
发表于 2004-7-20 23:30:38 | 显示全部楼层 |阅读模式
  1. $ cat text
  2. akelwkdakADFMAWS98391020
  3. $ sed -e 's/[a-z]/[A-Z]/g' text
  4. [A-Z][A-Z][A-Z][A-Z][A-Z][A-Z][A-Z][A-Z][A-Z]ADFMAWS98391020
  5. $ sed -e 's/[A-Z]/[a-z]/g' text
  6. akelwkdak[a-z][a-z][a-z][a-z][a-z][a-z][a-z]98391020
  7. $ sed -e 's/[[:lower:]]//g' text
  8. ADFMAWS98391020
  9. $ sed -e 's/[[:upper:]]//g' text
  10. akelwkdak98391020
  11. $ sed -e 's/[[:lower:]]/[[:upper:]]/g' text
  12. [[:upper:]][[:upper:]][[:upper:]][[:upper:]][[:upper:]][[:upper:]][[:upper:]][[:upper:]][[:upper:]]ADFMAWS98391020
复制代码

怎么这样?
:confused:
发表于 2004-7-20 23:35:26 | 显示全部楼层
sed里有专门的大小写替换的命令: y,不过,这个命令效率很低,很少有人用!
sed 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' file
不如用tr 方便
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表