zoukankan      html  css  js  c++  java
  • sed之大小写转换

    1)

    this is a dog!
    
    请把每个单词的第一个字母替换成大写。
    
    1. sed 's/[a-z]/u&/g
    
    [解析]
    
     大家应该知道是锚定的意思,说白了就是边界符,那么这就只会匹配第一个开头的字母,然后U的意思在元字符里的解释是“大写(不是标题首字符)E 以前的字符”,而u只是将下一个字符变为大写,注意它们的区别噢。
    

    2)

    http://www.a.com/aaafkslafjlxcv/fsfa/8/Xxxx.XxXX
    
    把URL中的大写字符替换成小写。
    
    1. sed 's/[A-Z]/l&/g' file
    
    [解析]
    
     同理L的意思是使之变为小写。
    1. # 全文大小写转换
    2. tr a-z A-Z
    3. tr A-Z a-z
    4. 
    5. # 大小写对换
    6. echo "aBcDE" | tr '[a-zA-Z]' '[A-Za-z]
    

    3)

    比如说:a.txt b.txt c.txt
    
    更名变成 A.txt B.txt C.txt 
    
    
    1. ls *.txt|sed -nr 's/(.)(..*)/mv & u12/e'
    
    [解析]
    
    u 是转换后面的内容第一个字母为大写,U是全部为大写直到遇到 E 为止。这就是区别:
    
    
    
    1. echo 'abc'|sed 's/^../u&/'
    2. Abc
    3. echo 'abc'|sed 's/^../U&E/'
    4. ABc
    
  • 相关阅读:
    codevs 2149 矩形周长
    codevs 3044 矩形面积求并
    codevs 1293 送给圣诞夜的极光
    codevs 2806 红与黑
    codevs 1536 海战
    codevs 1262 不要把球传我
    codevs 2606 约数和问题
    BZOJ 2301 problem b
    BZOJ 3994 约数个数和
    codevs 1173 最优贸易
  • 原文地址:https://www.cnblogs.com/hypj/p/14117795.html
Copyright © 2011-2022 走看看