Jump to content
notsure

Compare text and show differences?

Recommended Posts

notsure
Hi.
 
I'm trying to compare 2 texts with eachother but im struggling a little.
 
I have 1 file for today ($array) and 1 file from yesterday ($filecontents), those should be compared to see whats being added today.
 
Todays file example:
12345
23456
34567
 

Yesterdays file example:
12345
23456
34567
45678
 
I tried something like this, it works but its ugly, besides, i only have to see whats being added.
 
$file = fileopen ("test.txt")
$filecontents = readfile ($file)
for $x = 1 to ubound($array) - 1
 if stringinstr($filecontents, $array[$x]) > 0 then
  stringreplace($filecontents, $array[$x], "")
 endif
next
 
this shows whats "left" after replacing the whole array with nothing... but there should be a better way to do this i guess?
 
Any thoughts?
Thanks

Share this post


Link to post
Share on other sites
water

IIRC there are some threads on the forum about file comparison scripts.
Maybe you could grab some ideas/code from those?


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2018-10-19 - Version 1.4.10.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (2018-10-31 - Version 1.3.4.1) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
PowerPoint (2017-06-06 - Version 0.0.5.0) - Download - General Help & Support
Excel - Example Scripts - Wiki
Word - Wiki
 
Tutorials:

ADO - Wiki

 

Share this post


Link to post
Share on other sites
mikell

If the newly added part is just an addition to the old file text, this should work

$res = StringReplace(FileRead("today.txt"), FileRead("yesterday.txt"), "")
Msgbox(0,"", $res)

 

Share this post


Link to post
Share on other sites
notsure

I can't test this here, but what would $res return? If it returns "45678"  you're my man.

Share this post


Link to post
Share on other sites
mikell

... assuming of course that there was a typo in post #1 and that "45678" was added in today.txt file, not in yesterday  ;)

Share this post


Link to post
Share on other sites
notsure
12 hours ago, mikell said:

Its also purpose that addition may occur in the middle of the data... so this wouldnt work for that ;(

Edited by notsure

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×