-3

基本的に、以下のリストからすべての KB 番号を取得するには、正規表現を考え出す必要があります。最初の [ まで取り除き、コンマで分割してから [xx]: を各分割から削除する必要があると思います。

誰かが私を正しい方向に向けることができますか。私はperlで作業しています。

"194 個の修正プログラムがインストールされています。[01]: 982861、[02]: KB2592687、[03]: KB2425227、[04]: KB2484033、[05]: KB2488113、[06]: KB2492386、[07]: KB2503665 、[08]: KB2505438、[09]: KB2506014、[10]: KB2506212、[11]: KB2506928、[12]: KB2507618、[13]: KB2509553、[14]: KB2510531、[15]: KB2511250、[ [16]: KB2511455、[17]: KB2515325、[18]: KB2518869、[19]: KB2522422、[20]: KB2529073、[21]: KB2533552、[22]: KB2536275、[23]: KB2536276、[24] : KB2539635、[25]: KB2541014、[26]: KB2544893、[27]: KB2545698、[28]: KB2547666、[29]: KB2552343、[30]: KB2556532、[31]: KB2560656、[32]: KB2563227 、[33]: KB2564958、[34]: KB2567680、[35]: KB2570947、[36]: KB2572077、[37]: KB2574819、[38]: KB2584146、[39]: KB2585542、[40]: KB2588516、[ [41]: KB2603229、[42]: KB2604115、[43]: KB2607047、[44]: KB2607576、[45]: KB2608658、[46]: KB2618444、[47]: KB2618451、[48]: KB2620704、[49] : KB2620712、[50]: KB2621146、[51]: KB2621440、[52]: KB2631813、[53]: KB2633873、[54]: KB2633952、[55]: KB2636573、[56]: KB2639308、[57]: KB2639417、[58]: KB2640148、[59]: KB2641653、[60]: KB2641690、[61 ]: KB2643719、[62]: KB2644615、[63]: KB2645640、[64]: KB2647516、[65]: KB2647518、[66]: KB2647753、[67]: KB2653956、[68]: KB2654428、[69]: KB2655992、[70]: KB2656356、[71]: KB2656373、[72]: KB2656411、[73]: KB2658846、[74]: KB2659262、[75]: KB2660075、[76]: KB2660465、[77]: KB2661254、 [78]: KB2665364、[79]: KB2667402、[80]: KB2675157、[81]: KB2676562、[82]: KB2677070、[83]: KB2679255、[84]: KB2685811、[85]: KB2685813、[86 ]: KB2685939、[87]: KB2686831、[88]: KB2688338、[89]: KB2690533、[90]: KB2691442、[91]: KB2695962、[92]: KB2698365、[93]: KB2699779、[94]: KB2699988、[95]: KB2705219、[96]: KB2709162、[97]: KB2709630、[98]: KB2709715、[99]: KB2709981、[100]: KB2712808、[101]: KB2718523、[102]: KB2718704、 [103]: KB2719177、[104]: KB2719857、[105]: KB2719985、[106]:KB2722913、[107]: KB2724197、[108]: KB2726535、[109]: KB2729094、[110]: KB2729452、[111]: KB2731771、[112]: KB2731847、[113]: KB2732059、[114]: KB273585 [115]: KB2736233、[116]: KB2736422、[117]: KB2739159、[118]: KB2741355、[119]: KB2742599、[120]: KB2743555、[121]: KB2744842、[122]: KB2749655、[123 ]: KB2750841、[124]: KB2753842、[125]: KB2756822、[126]: KB2756921、[127]: KB2757638、[128]: KB2758857、[129]: KB2761217、[130]: KB2761226、[131]: KB2761451、[132]: KB2761465、[133]: KB2762895、[134]: KB2763523、[135]: KB2765809、[136]: KB2769369、[137]: KB2770660、[138]: KB2772930、[139]: KB277834 [140]: KB2778930、[141]: KB2779030、[142]: KB2779562、[143]: KB2785220、[144]: KB2786081、[145]: KB2786400、[146]: KB2789645、[147]: KB2790113、[148 ]: KB2790655、[149]: KB2791765、[150]: KB2792100、[151]: KB2797052、[152]: KB2798162、[153]: KB2799494、[154]: KB2804579、[155]: KB2806748、[156]:KB2807986、[157]: KB2808679、[158]: KB2808735、[159]: KB2809289、[160]: KB2813170、[161]: KB2813347、[162]: KB2813430、[163]: KB2817183、[164]: KB7、KB282019 [165]: KB2820331、[166]: KB2823324、[167]: KB2830290、[168]: KB2832414、[169]: KB2833946、[170]: KB2834140、[171]: KB2834886、[172]: KB2835361、[173 ]: KB2836942、[174]: KB2836943、[175]: KB2839894、[176]: KB2840149、[177]: KB2840631、[178]: KB2844286、[179]: KB2849470、[180]: KB2850851、[181]: KB2853587、[182]: KB2853952、[183]​​: KB2859537、[184]: KB2861855、[185]: KB2862772、[186]: KB2862966、[187]: KB2863058、[188]: KB2868116、[189]: KB286862 [190]: KB2870699、[191]: KB2872339、[192]: KB2876315、[193]: KB976902、[194]: KB982018"KB2832414、[169]: KB2833946、[170]: KB2834140、[171]: KB2834886、[172]: KB2835361、[173]: KB2836942、[174]: KB2836943、[175]: KB2839894、[176]: KB284014 [177]: KB2840631、[178]: KB2844286、[179]: KB2849470、[180]: KB2850851、[181]: KB2853587、[182]: KB2853952、[183]​​: KB2859537、[184]: KB2861855、[185] ]: KB2862772、[186]: KB2862966、[187]: KB2863058、[188]: KB2868116、[189]: KB2868623、[190]: KB2870699、[191]: KB2872339、[192]: KB2876315、[193]: KB976902、[194]: KB982018"KB2832414、[169]: KB2833946、[170]: KB2834140、[171]: KB2834886、[172]: KB2835361、[173]: KB2836942、[174]: KB2836943、[175]: KB2839894、[176]: KB284014 [177]: KB2840631、[178]: KB2844286、[179]: KB2849470、[180]: KB2850851、[181]: KB2853587、[182]: KB2853952、[183]​​: KB2859537、[184]: KB2861855、[185] ]: KB2862772、[186]: KB2862966、[187]: KB2863058、[188]: KB2868116、[189]: KB2868623、[190]: KB2870699、[191]: KB2872339、[192]: KB2876315、[193]: KB976902、[194]: KB982018"KB2876315、[193]: KB976902、[194]: KB982018"KB2876315、[193]: KB976902、[194]: KB982018"

4

2 に答える 2

2

ワンライナーソリューションが必要ない場合は、次のとおりです。

#!/usr/bin/perl
use warnings;
use strict;

my $t="194 Hotfix(s) Installed.,[01]: 982861,[02]: KB259245 ....";
my @numbers=$t=~/KB(\d+)/g;
print join("\n",@numbers);

KBプレフィックスが欠落しているため、最初の番号[01]はこの正規表現と一致しないことに注意してください。これは投稿のタイプミスだと思います。それ以外の場合は、一致する正規表現を次のように変更します。

my @numbers=$t=~/(\d+)(?:\,|\z)/g;
于 2013-09-25T20:40:23.797 に答える
1
perl -nE 'say join " ", /KB(\d+)/g"' file
于 2013-09-25T20:29:14.567 に答える