二重引用符で囲まれたコメントを削除する必要があります。

二重引用符で囲まれたコメントを削除する必要があります。

二重引用符で囲まれた文字列メッセージを含むテストケースがあり、二重引用符で囲まれたデータを削除したいと思います。コマンドを使用してコメントセクションデータを削除しましたが、awk機能しません

awk '/^"/ { print }' full-case

入力例:

case('pr_ua_sfochi', "Response:answer(amount(2370.09,usd)", price).

予想出力:

case('pr_ua_sfochi',price).

アドバイスしてください。

awk '{gsub(/".*",/,"");print}' file.txt は上記の場合は機能しますが、次の場合は失敗します。ここで、2番目のパラメータは二重引用符で囲まれています。

実際のケース:

case('pr_ua_sfochi',"
Response:

answer(amount(2370.09,usd),[[01AUG06SFO UA CHI Q9.30 1085.58FUA2SFS UA SFO Q9.30 1085.58FUA2SFS NUC2189.76END ROE1.0 XT USD 180.33 ZPSFOCHI                                                           164.23US6.60ZP5.00AY XF4.50SFO4.5]],amount(2189.76,usd),amount(2189.76,usd),amount(180.33,usd),[[fua2sfs,fua2sfs]],amount(6.6,usd),amount(                                                          4.5,usd),amount(0.0,usd),amount(18.6,usd),lasttktdate([20061002]),lastdateafterres(200712282]),[[fic_ticketinfo(fare(fua2sfs),fic([]),nvb([                                                          ]),nva([]),tktiss([]),penalty([]),tktendorsement([]),tourinfo([]),infomsgs([])),fic_ticketinfo(fare(fua2sfs),fic([]),nvb([]),nva([]),tktiss                                                          ([]),penalty([]),tktendorsement([]),tourinfo([]),infomsgs([]))]],<>,<>,cat35(cat35info([])))
.
02/20/2006 17:05:10 Transaction 35 served by static.static.server1 (usclsefat002:7551) running E*Fare version $Name: build-2006-02-19-1900                                                           $",
price(pnr(
        user('atl','1y',<>,<>,dept(<>,'0005300'),<>,<>,<>),
        [
                passenger(adt,1,[ptconly(n)])
        ],
        [

segment(1,sfo,chi,'ua','<>','100',20140901,0800,f,20140901,2100,'737',res(20140628,1316),hk,pf2(n,[],[],n),<>,flags(no,no,no,no,no,no,no,no                                                          ,no)),

segment(2,chi,sfo,'ua','<>','101',20140906,1000,f,20140906,1400,'737',res(20140628,1316),hk,pf2(n,[],[],n),<>,flags(no,no,no,no,no,no,no,no                                                          ,no))
        ]),[
                rebook(n),
                ticket(20140301,131659),
                dbaccess(20140301,131659),
                platingcarrier('ua'),
                tax_exempt([]),
                trapparm("trap:ffil"),
                city(y)
        ])).

答え1

awkを使用してこれを行うことができます。

awk '{sub(/".*",/,"");print}' filename

関連情報