- using System; 
- using System.IO; 
- using System.Text.RegularExpressions; 
-   
- public class Test 
- { 
- 	public static void Main() 
- 	{ 
- 		var str = @"--8W1_805_431____0210_A01_0002_L--;%{PE}%R   
- 8.2.24,%MKUKATPBASIS,%CCOMMENT,%VNORMAL,%P 2: --8W1_805_431____0210_A01_0002_L-- 
- ;ENDFOLD   
-   
- ;FOLD PTP SG003920 Vel=100 % PDAT5 ServoGun=8 Cont=OPN Part=2.65 mm WeldTimer=WTDAT1 Tool[1]:zc1 Base[1]:510wz1;%{PE}%R 4.1.25,%MKUKATPSERVOTECH,%CSpotTC,%VPTP,%P 1:PTP, 2:SG003920, 3:, 5:100, 7:PDAT5, 9:1, 11:1, 13:OPN, 15:2.65, 18:1, 21:0, 24:0, 27:5, 30:0, 33:WTDAT1 
- $BWDSTART=FALSE 
- PDAT_ACT=PPDAT5 
- FDAT_ACT=FSG003920 
- BAS(#PTP_PARAMS,100) 
- EG_SPOT_POINT_NAME[]=""SG003920"" 
- EG_EXTAX_ACTIVE=EG_SERVOGUN_EXAXIS[1] 
- EG_THICKNESS=2.65 
- EG_GUN_FORCE=1 
- EG_COMP_HELP=0 
- EG_COMPENSATE_PATH=0 
- EG_PROGRAM_NUMBER=003920 
- EG_HELPPOINT=EG_CHTIP(XSG003920) 
- PTP EG_HELPPOINT  
- EG_APPROX_OPEN=FALSE 
- CMD=#SPOT 
- EG_SPOT_POINT=EG_HELPPOINT 
- EG_SPOT( WTWTDAT1 )   
- PTP EG_HELPPOINT C_DIS 
- CMD=#STOP_POINT_END 
- EG_SPOT_POINT=EG_HELPPOINT 
- EG_SPOT( ) 
-   
-   ; --8W1_112_431____0210_A01_0001_L--;%{PE}%R 8.2 
-   
- ;FOLD PTP SG003918 Vel=100 % PDAT7 ServoGun=1 Cont=OPN Part=2.65 mm WeldTimer=WTDAT2 Tool[1]:zc1 Base[1]:510wz1;%{PE}%R 4.1.25,%MKUKATPSERVOTECH,%CSpotTC,%VPTP,%P 1:PTP, 2:SG003918, 3:, 5:100, 7:PDAT7, 9:1, 11:1, 13:OPN, 15:2.65, 18:1, 21:0, 24:0, 27:5, 30:0, 33:WTDAT2 
- $BWDSTART=FALSE 
- PDAT_ACT=PPDAT7 
- FDAT_ACT=FSG003918 
- BAS(#PTP_PARAMS,100) 
- EG_SPOT_POINT_NAME[]=""SG003918"" 
- EG_EXTAX_ACTIVE=EG_SERVOGUN_EXAXIS[1] 
- EG_THICKNESS=2.65 
- EG_GUN_FORCE=1 
- EG_COMP_HELP=0 
- EG_COMPENSATE_PATH=0 
- EG_PROGRAM_NUMBER=003918 
- EG_HELPPOINT=EG_CHTIP(XSG003918) 
- PTP EG_HELPPOINT  
- EG_APPROX_OPEN=FALSE 
- CMD=#SPOT 
- EG_SPOT_POINT=EG_HELPPOINT 
- EG_SPOT( WTWTDAT2 ) 
- PTP EG_HELPPOINT C_DIS 
- CMD=#STOP_POINT_END 
- EG_SPOT_POINT=EG_HELPPOINT 
- EG_SPOT( ) 
- ;ENDFOLD"; 
- 		var rx = new Regex(@"--(?<PName>8W.*?)--.*?(?<MType>PTP|LIN).*?(?<PointNa>SG)", RegexOptions.Singleline); 
-         var coll = rx.Matches(str); 
-         foreach (Match m in coll) 
-             Console.WriteLine(m.Groups["PName"].Value); 
- 	} 
- } 
				dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uSU87CnVzaW5nIFN5c3RlbS5UZXh0LlJlZ3VsYXJFeHByZXNzaW9uczsKCnB1YmxpYyBjbGFzcyBUZXN0CnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkKCXsKCQl2YXIgc3RyID0gQCItLThXMV84MDVfNDMxX19fXzAyMTBfQTAxXzAwMDJfTC0tOyV7UEV9JVIgIAo4LjIuMjQsJU1LVUtBVFBCQVNJUywlQ0NPTU1FTlQsJVZOT1JNQUwsJVAgMjogLS04VzFfODA1XzQzMV9fX18wMjEwX0EwMV8wMDAyX0wtLQo7RU5ERk9MRCAgCgo7Rk9MRCBQVFAgU0cwMDM5MjAgVmVsPTEwMCAlIFBEQVQ1IFNlcnZvR3VuPTggQ29udD1PUE4gUGFydD0yLjY1IG1tIFdlbGRUaW1lcj1XVERBVDEgVG9vbFsxXTp6YzEgQmFzZVsxXTo1MTB3ejE7JXtQRX0lUiA0LjEuMjUsJU1LVUtBVFBTRVJWT1RFQ0gsJUNTcG90VEMsJVZQVFAsJVAgMTpQVFAsIDI6U0cwMDM5MjAsIDM6LCA1OjEwMCwgNzpQREFUNSwgOToxLCAxMToxLCAxMzpPUE4sIDE1OjIuNjUsIDE4OjEsIDIxOjAsIDI0OjAsIDI3OjUsIDMwOjAsIDMzOldUREFUMQokQldEU1RBUlQ9RkFMU0UKUERBVF9BQ1Q9UFBEQVQ1CkZEQVRfQUNUPUZTRzAwMzkyMApCQVMoI1BUUF9QQVJBTVMsMTAwKQpFR19TUE9UX1BPSU5UX05BTUVbXT0iIlNHMDAzOTIwIiIKRUdfRVhUQVhfQUNUSVZFPUVHX1NFUlZPR1VOX0VYQVhJU1sxXQpFR19USElDS05FU1M9Mi42NQpFR19HVU5fRk9SQ0U9MQpFR19DT01QX0hFTFA9MApFR19DT01QRU5TQVRFX1BBVEg9MApFR19QUk9HUkFNX05VTUJFUj0wMDM5MjAKRUdfSEVMUFBPSU5UPUVHX0NIVElQKFhTRzAwMzkyMCkKUFRQIEVHX0hFTFBQT0lOVCAKRUdfQVBQUk9YX09QRU49RkFMU0UKQ01EPSNTUE9UCkVHX1NQT1RfUE9JTlQ9RUdfSEVMUFBPSU5UCkVHX1NQT1QoIFdUV1REQVQxICkgIApQVFAgRUdfSEVMUFBPSU5UIENfRElTCkNNRD0jU1RPUF9QT0lOVF9FTkQKRUdfU1BPVF9QT0lOVD1FR19IRUxQUE9JTlQKRUdfU1BPVCggKQoKICA7IC0tOFcxXzExMl80MzFfX19fMDIxMF9BMDFfMDAwMV9MLS07JXtQRX0lUiA4LjIKCjtGT0xEIFBUUCBTRzAwMzkxOCBWZWw9MTAwICUgUERBVDcgU2Vydm9HdW49MSBDb250PU9QTiBQYXJ0PTIuNjUgbW0gV2VsZFRpbWVyPVdUREFUMiBUb29sWzFdOnpjMSBCYXNlWzFdOjUxMHd6MTsle1BFfSVSIDQuMS4yNSwlTUtVS0FUUFNFUlZPVEVDSCwlQ1Nwb3RUQywlVlBUUCwlUCAxOlBUUCwgMjpTRzAwMzkxOCwgMzosIDU6MTAwLCA3OlBEQVQ3LCA5OjEsIDExOjEsIDEzOk9QTiwgMTU6Mi42NSwgMTg6MSwgMjE6MCwgMjQ6MCwgMjc6NSwgMzA6MCwgMzM6V1REQVQyCiRCV0RTVEFSVD1GQUxTRQpQREFUX0FDVD1QUERBVDcKRkRBVF9BQ1Q9RlNHMDAzOTE4CkJBUygjUFRQX1BBUkFNUywxMDApCkVHX1NQT1RfUE9JTlRfTkFNRVtdPSIiU0cwMDM5MTgiIgpFR19FWFRBWF9BQ1RJVkU9RUdfU0VSVk9HVU5fRVhBWElTWzFdCkVHX1RISUNLTkVTUz0yLjY1CkVHX0dVTl9GT1JDRT0xCkVHX0NPTVBfSEVMUD0wCkVHX0NPTVBFTlNBVEVfUEFUSD0wCkVHX1BST0dSQU1fTlVNQkVSPTAwMzkxOApFR19IRUxQUE9JTlQ9RUdfQ0hUSVAoWFNHMDAzOTE4KQpQVFAgRUdfSEVMUFBPSU5UIApFR19BUFBST1hfT1BFTj1GQUxTRQpDTUQ9I1NQT1QKRUdfU1BPVF9QT0lOVD1FR19IRUxQUE9JTlQKRUdfU1BPVCggV1RXVERBVDIgKQpQVFAgRUdfSEVMUFBPSU5UIENfRElTCkNNRD0jU1RPUF9QT0lOVF9FTkQKRUdfU1BPVF9QT0lOVD1FR19IRUxQUE9JTlQKRUdfU1BPVCggKQo7RU5ERk9MRCI7CgkJdmFyIHJ4ID0gbmV3IFJlZ2V4KEAiLS0oPzxQTmFtZT44Vy4qPyktLS4qPyg/PE1UeXBlPlBUUHxMSU4pLio/KD88UG9pbnROYT5TRykiLCBSZWdleE9wdGlvbnMuU2luZ2xlbGluZSk7CiAgICAgICAgdmFyIGNvbGwgPSByeC5NYXRjaGVzKHN0cik7CiAgICAgICAgZm9yZWFjaCAoTWF0Y2ggbSBpbiBjb2xsKQogICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZShtLkdyb3Vwc1siUE5hbWUiXS5WYWx1ZSk7Cgl9Cn0=