我试图处理包含sed货币的文件,但无法弄清楚我的错误在哪里。
这是文件摘录:
AED:阿拉伯联合酋长国DirhamAFN:阿富汗阿富汗人所有:阿尔巴尼亚人LekAMD:亚美尼亚民主党:荷属安的列斯群岛GuldenAOA:安哥拉宽扎 ARS:阿根廷比索澳元:澳大利亚元警察:Aruban FlorinAZN:阿塞拜疆ManatBAM :波斯尼亚&黑塞哥维那可兑换MarkBBD:巴巴多斯美元BBT:孟加拉国TakaBGN:保加利亚LevBIF:布隆迪FrancBMD:百慕大元BND:文莱DollarBOB:玻利维亚Boliviano BRL:巴西雷亚尔* BSD:Bahamian DollarBWP:博茨瓦纳PulaBZD:伯利兹DollarCAD:加元[... ]
我想在每个树大写组之前添加一个换行符,后跟字符":"。
我尝试的是sed -e 's/\([A-Z]{3}:)/\n\1/g list1.txt > list2.txt
,但没有任何改变。事实上,当我尝试/[A-Z]{3}/blabla/
时,没有任何事情发生。
我很困惑。
答案 0 :(得分:1)
sed -r 's/([A-Z]{3}:)/\n\1/g' list1.txt
# or
# sed -e 's/\([A-Z]\{3\}:\)/\n\1/g' list1.txt
返回:
AED: United Arab Emirates Dirham
AFN: Afghan Afghani
ALL: Albanian Lek
AMD: Armenian Dram
ANG: Netherlands Antillean Gulden
AOA: Angolan Kwanza
ARS: Argentine Peso
AUD: Australian Dollar
AWG: Aruban Florin
AZN: Azerbaijani Manat
BAM: Bosnia & Herzegovina Convertible Mark
BBD: Barbadian Dollar
BDT: Bangladeshi Taka
BGN: Bulgarian Lev
BIF: Burundian Franc
BMD: Bermudian Dollar
BND: Brunei Dollar
BOB: Bolivian Boliviano
BRL: Brazilian Real*
BSD: Bahamian Dollar
BWP: Botswana Pula
BZD: Belize Dollar
CAD: Canadian Dollar