Π?ΠΌΠΏΠΎΡ€Ρ‚ банковской выписки

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» ΠΈΠ· GedeminWiki
(Различия ΠΌΠ΅ΠΆΠ΄Ρƒ вСрсиями)
ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ: навигация, поиск
Π‘Ρ‚Ρ€ΠΎΠΊΠ° 8: Π‘Ρ‚Ρ€ΠΎΠΊΠ° 8:
 
   ParseStatement s
 
   ParseStatement s
 
  End Sub
 
  End Sub
 +
 +
Π—Π°Π΄Π°Ρ‡Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ParseStatement -- Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ тСкст Π½Π° ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹Π΅ выписки ΠΈ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ParseOneStatement, ΠΏΠ΅Ρ€Π΅Π΄Π°Π² Π΅ΠΉ Π½Π° Π²Ρ…ΠΎΠ΄ счСт, Π΄Π°Ρ‚Ρƒ выписки ΠΈ Π΅Π΅ тСкст:
 +
 +
 +
 +
Как Π²ΠΈΠ΄Π½ΠΎ, ΠΌΡ‹ распознаСм выписки Π² Ρ„Π°ΠΉΠ»Π΅ ΠΏΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΡƒ. ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит строку "Π›ΠΈΡ†Π΅Π²ΠΎΠΉ счСт". Из Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΌΡ‹ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅ΠΌ Π½ΠΎΠΌΠ΅Ρ€ счСта ΠΈ Π΄Π°Ρ‚Ρƒ выписки. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ счСт ΠΌΡ‹ "склСиваСм" ΠΈΠ· Π΄Π²ΡƒΡ… частСй, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π΅ ΠΎΠ½ содСрТит Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ -- дСвис. Π”Π°Ρ‚Ρƒ ΠΈΠ· тСкста ΠΌΡ‹ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅ΠΌ ΠΏΠΎ-ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ: дСнь. мСсяц ΠΈ Π³ΠΎΠ΄, объСдиняя ΠΈΡ… ΠΏΠΎΡ‚ΠΎΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DateSerial.

ВСрсия 17:32, 25 фСвраля 2007

ΠžΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠΌΠΏΠΎΡ€Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· тСкстововго Ρ„Π°ΠΉΠ»Π° Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… Π“Π΅Π΄Ρ‹ΠΌΠΈΠ½Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ°ΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнного ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΠΈΠΌΠΏΠΎΡ€Ρ‚Π°, Ρ‚Π°ΠΊ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ рСгулярныС выраТСния. Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим Π²Ρ‚ΠΎΡ€ΠΎΠΉ способ. Π’ качСствС ΠΎΠ±Ρ€Π°Π·Ρ†Π° Ρ„Π°ΠΉΠ»Π° с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π²ΠΎΠ·ΠΌΠ΅ΠΌ Π±Π°Π½ΠΊΠΎΠ²ΡΠΊΡƒΡŽ выписку Π‘Π΅Π»Π°Π³Ρ€ΠΎΠΏΡ€ΠΎΠΌΠ±Π°Π½ΠΊΠ°. Как Π²ΠΈΠ΄Π½ΠΎ, содСрТимоС Ρ„Π°ΠΉΠ»Π° -- это выписка ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ»ΠΈ нСскольким счСтам. НапишСм ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ, которая Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» с диска, ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈΠ· Π”ΠžΠ‘ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ Ρ€Π°Π·Π±ΠΎΡ€Π° выписки:

Sub ParseFile
  Const ForReading = 1
  Dim s
  s = System.OEMToAnsi(CreateObject("Scripting.FileSystemObject")._
    OpenTextFile("c:\temp\vyp.txt", ForReading).ReadAll)
  ParseStatement s
End Sub

Π—Π°Π΄Π°Ρ‡Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ParseStatement -- Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ тСкст Π½Π° ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹Π΅ выписки ΠΈ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ParseOneStatement, ΠΏΠ΅Ρ€Π΅Π΄Π°Π² Π΅ΠΉ Π½Π° Π²Ρ…ΠΎΠ΄ счСт, Π΄Π°Ρ‚Ρƒ выписки ΠΈ Π΅Π΅ тСкст:


Как Π²ΠΈΠ΄Π½ΠΎ, ΠΌΡ‹ распознаСм выписки Π² Ρ„Π°ΠΉΠ»Π΅ ΠΏΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΡƒ. ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит строку "Π›ΠΈΡ†Π΅Π²ΠΎΠΉ счСт". Из Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΌΡ‹ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅ΠΌ Π½ΠΎΠΌΠ΅Ρ€ счСта ΠΈ Π΄Π°Ρ‚Ρƒ выписки. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ счСт ΠΌΡ‹ "склСиваСм" ΠΈΠ· Π΄Π²ΡƒΡ… частСй, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π΅ ΠΎΠ½ содСрТит Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ -- дСвис. Π”Π°Ρ‚Ρƒ ΠΈΠ· тСкста ΠΌΡ‹ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅ΠΌ ΠΏΠΎ-ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ: дСнь. мСсяц ΠΈ Π³ΠΎΠ΄, объСдиняя ΠΈΡ… ΠΏΠΎΡ‚ΠΎΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DateSerial.

ΠŸΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ инструмСнты
ΠŸΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚Π²Π° ΠΈΠΌΡ‘Π½

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹
ДСйствия
Навигация
Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹