Recently, I needed to extract all email addresses from a document for further processing. While I ended up writing my own regular expression, in the beginning I wanted to search for a public web service for this task. Appearantly, there exist lots of such services. However, I could not find one that works without transmitting the entered plain text to some shady server where I have no control over the sent data. This is unacceptable since email addresses are almost always sensible data points.
Out of frustration, I decided to set up such a service myself. I used this opportunity to get my feet wet with Vue.js and GitLab Pages (as described in a previous blog post).
Email Extractor – a new public web service
Here is the result: https://email-extractor.knasmueller.net/
In case you wonder about the absence of buttons: Vue.js is able to process the entered input directly and immediately outputs the results as you type – which quite frankly is absolutely amazing. I did in fact test the performance of this feature with a few thousand paragraphs of “Lorem Ipsum” and correct results were generated in a few seconds.
As you can verify using Firefox’s network monitoring tool, the entered data is not sent to any web service; instead, Vue.js processes it as you type and extracts all strings that match my regular expression (please report if I missed some edge cases. Initially, I forgot about the + character that is used for example by Gmail).
Naturally, I also set up a Letsencrypt SSL certificate which also worked flawlessly using GitLab Pages.
Setting up this service was a fun way for getting to know Vue.js and I’m already looking forward to creating more similar ones in the future.
Hello,
I get this:
“401
You don’t have permission to access the resource.
The resource that you are attempting to access is protected and you don’t have the necessary permissions to view it.”
When trying to enter “https://email-extractor.knasmueller.net/”.
Thank you,
Hi Malte,
thank you so much for your interest in this tool. You’re completely right, there was an issue with GitLab Pages which I hope I could resolve. Would you please check again?
Best regards,
Bernhard