blob: 554efe6607af60c2795bc7ecab7bc6467e109b14 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#!/usr/bin/env perl
#
# This groups a transaction description to an expense category
# and prints to STDOUT to piping and or filtering elsewhere.
#
# The objective is for the output file to be used as a reference
# for another script which applies expense categories to new
# unprocessed budget files automatically.
use strict;
use warnings;
local $/ = ""; # switch to paragraph mode (allow use of /m modifier below)
while (<>) {
# we only want true expenses, no income, rebates, pocket money, etc
# Not all undesirable cases will be found based on this so be warned!
next if (/Pocket Money|Income|Assets|[Rr]ebate/);
next if (/-£/);
if (/\d{4}.*\* (.*)$/m) { print $1 . "@" };
if (/Expenses:(.*)£/) { print $1 . "\n" };
}
|