Start-data
Company: GG Product: 99 Branch: 0003 ประจำวันที่ 30/03/13 Time : 0:57:35
------------------------------------------------------------------------------------------------------------------------------------
Item Contract <---------------- Customer Name -----------------> Late Charge Contract Status Aging Payment
------------------------------------------------------------------------------------------------------------------------------------
1 0000599 น.ส.สมควร เสียใจ 51.47 C 23 H37
2 0000600 นายอรุณ จิตตก 55.45 C 23 H99
3 0001348 นายวิรุฬห์ แมวเหมียว 14.85 C 5 H99
...
...
126 0007841 นายปิ่นเกษม คิดไม่ออก 20.93 C 1 H99
Total By Branch : 126 Item 2330.68
----------- ---------------
End-Data
ผมทดลองทำใน VB
Dim RegEx As VBScript_RegExp_55.RegExp, RegMatchCollection As VBScript_RegExp_55.MatchCollection
Dim RegMatch As VBScript_RegExp_55.Match, SubMatch As VBScript_RegExp_55.SubMatches
With RegEx
.MultiLine = True
.Global = True
.IgnoreCase = True
.Pattern = "^ {5,}.*\d.*$"
End with
ซึ่งดูเหมือนว่าจะดึงออกมาได้ใกล้เคียงที่ต้องการที่สุดแล้ว(เท่าที่ผมทำเป็น)
แต่ยังติดบรรทัด Total ออกมาด้วย ต้องการให้ Patten มันไม่จับออกมาเลย (ไม่ใช่เขียน IF Instr(.....,"Total")>0 then.... end if) นะครับ
เพราะจะได้เอาไว้เช็คว่ามันหาเจอกี่ตัว แล้ว print ออกมาครบหรือไม่ ถ้าเจอ 200 แล้วพิมพ์ 200 บรรทัดก็แปลว่าครบ
รบกวนแนะนำทีครับ ว่าจะไม่เอา Total ออกมาได้ยังไงดี เจอแต่ | มันแทนด้วย OR
ขอบคุณมาล่วงหน้าครับ
VB RegExp ต้องการดึงเอาเฉพาะข้อมูลต้องเขียน Patten ยังไงครับ
Company: GG Product: 99 Branch: 0003 ประจำวันที่ 30/03/13 Time : 0:57:35
------------------------------------------------------------------------------------------------------------------------------------
Item Contract <---------------- Customer Name -----------------> Late Charge Contract Status Aging Payment
------------------------------------------------------------------------------------------------------------------------------------
1 0000599 น.ส.สมควร เสียใจ 51.47 C 23 H37
2 0000600 นายอรุณ จิตตก 55.45 C 23 H99
3 0001348 นายวิรุฬห์ แมวเหมียว 14.85 C 5 H99
...
...
126 0007841 นายปิ่นเกษม คิดไม่ออก 20.93 C 1 H99
Total By Branch : 126 Item 2330.68
----------- ---------------
End-Data
ผมทดลองทำใน VB
Dim RegEx As VBScript_RegExp_55.RegExp, RegMatchCollection As VBScript_RegExp_55.MatchCollection
Dim RegMatch As VBScript_RegExp_55.Match, SubMatch As VBScript_RegExp_55.SubMatches
With RegEx
.MultiLine = True
.Global = True
.IgnoreCase = True
.Pattern = "^ {5,}.*\d.*$"
End with
ซึ่งดูเหมือนว่าจะดึงออกมาได้ใกล้เคียงที่ต้องการที่สุดแล้ว(เท่าที่ผมทำเป็น)
แต่ยังติดบรรทัด Total ออกมาด้วย ต้องการให้ Patten มันไม่จับออกมาเลย (ไม่ใช่เขียน IF Instr(.....,"Total")>0 then.... end if) นะครับ
เพราะจะได้เอาไว้เช็คว่ามันหาเจอกี่ตัว แล้ว print ออกมาครบหรือไม่ ถ้าเจอ 200 แล้วพิมพ์ 200 บรรทัดก็แปลว่าครบ
รบกวนแนะนำทีครับ ว่าจะไม่เอา Total ออกมาได้ยังไงดี เจอแต่ | มันแทนด้วย OR
ขอบคุณมาล่วงหน้าครับ