All source listed below is under MIT license if no LICENSE file stating different is available.

Isspam

Fast as light evaluator for text files to summarize specific details about the text files.

Building

make build

Build with memory check (requires valgrind to be installed):

make valgrind

Running

Using files as parameter

./isspam ./spam/*.txt
./isspam ./not_spam/*.txt

Using stdin

Useful for automation.

cat ./spam/example_spam1.txt | ./isspam

Example output

File: ./spam/example_spam3.txt
Capitalized words: 39
Sentences: 20
Words: 420
Numbers: 1
Forbidden words: 15
<0:recovery>
<1:techie>
<2:https>
<3:digital>
<4:hack>
<5://>
<6:com>
<7:@>
<8:crypto>
<9:bitcoin>
<10:whatsapp>
<11:cryptocurrency>
<12:stolen>
<13:contact>
<14:understanding>
Word count per sentence: 21
Memory usage: 1 MB, 6.460 (re)allocated, 4.222 unqiue free'd, 0 in use.

Valgrind status

Date: 2024-11-28

Memory usage: 1 MB, 6.460 (re)allocated, 4.222 unqiue free'd, 0 in use.
==131498== 
==131498== HEAP SUMMARY:
==131498==     in use at exit: 0 bytes in 0 blocks
==131498==   total heap usage: 6,486 allocs, 6,486 frees, 2,342,294 bytes allocated
==131498== 
==131498== All heap blocks were freed -- no leaks are possible
==131498== 
==131498== For lists of detected and suppressed errors, rerun with: -s
==131498== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
.gitea/workflows
not_spam
spam
.clang-format
.gitignore
isspam
isspam.c
Makefile
README.md
rmalloc.h
rstr.h
rstring_list.h
totals.py