首页 > 代码库 > sed grouping 操作理解

sed grouping 操作理解

echo "aGsdff:bDEf" >>employees
root@ubuntu:/home/koyaku# sed ‘s/\([^,]*\):\([^,]*\)/\U\1\L\2/‘ employees
Jones,Bob,232-78-3456
Jackeson,Jane,,
Federer,Jack,xxx-xx-xxxx
Maw,Michael,1879-0
Alexander,Sally,345-89-8095
Beder,Ioana,567-34-9802
Staines,Brad,,
sdfsd df
,
cdf , sdf
ac,D
ac,Df
ac,DG
AGSDFFbdef

 

第一个s 表替换

\([^,]*\) 这个表示在第一个group中,遇到非逗号(,)并且贪婪(×) 作为第一个待操作的对象

:  这个分号在这里是分隔符,分割第一个group 和第二个

\([^,]*\) 。第二个group,就是分割符号之后的为剩下的,在剩下的部分抓取非逗号的文本,一直到遇到逗号作为第二个group

/\U\1\L\2  对第一个group 进行upper 操作全部变为大写。对第二个group 进行操作变为小写 lower

不知道理解对不对。  感觉这也太繁琐了 ,看晕了

 

sed grouping 操作理解