{"id":1542,"date":"2023-02-17T04:46:07","date_gmt":"2023-02-17T04:46:07","guid":{"rendered":"https:\/\/www.tools.keywordfinder.us\/?page_id=1542"},"modified":"2023-02-17T04:46:07","modified_gmt":"2023-02-17T04:46:07","slug":"text-extractor","status":"publish","type":"page","link":"https:\/\/tools.billionsideas.com\/nl_nl\/text-extractor\/","title":{"rendered":"Text Extractor"},"content":{"rendered":"<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column has-base-3-background-color has-background is-layout-flow wp-block-column-is-layout-flow\">\n\n<section>\n  \n    <h1>Text Extractor<\/h1>\n    <link rel=\"stylesheet\" type=\"text\/css\" href=\"style.css\">\n  \n \n    <textarea id=\"text-input\"><\/textarea>\n    <br>\n    <button id=\"extract-button\">Extract<\/button>\n    <br><br>\n    <select id=\"data-select\">\n      <option value=\"phone\">Phone Numbers<\/option>\n      <option value=\"email\">Email Addresses<\/option>\n      <option value=\"url\">URLs<\/option>\n      <option value=\"keyword\">Keywords<\/option>\n      <option value=\"username\">Usernames<\/option>\n    <\/select>\n    <br><br>\n    <textarea id=\"data-output\"><\/textarea>\n    <br>\n    <button id=\"copy-button\">Copy<\/button>\n    <button id=\"download-button\">Download as Text<\/button><br><br>\n    <script src=\"script.js\"><\/script>\n <\/section> \n\n\n<script>\n\nconst extractButton = document.getElementById(\"extract-button\");\nconst dataSelect = document.getElementById(\"data-select\");\nconst dataOutput = document.getElementById(\"data-output\");\nconst copyButton = document.getElementById(\"copy-button\");\nconst downloadButton = document.getElementById(\"download-button\");\nconst textInput = document.getElementById(\"text-input\");\n\nextractButton.addEventListener(\"click\", function() {\n  let text = textInput.value;\n  let dataType = dataSelect.value;\n  let data = extractData(text, dataType);\n  dataOutput.value = data;\n});\n\ncopyButton.addEventListener(\"click\", function() {\n  dataOutput.select();\n  document.execCommand(\"copy\");\n});\n\ndownloadButton.addEventListener(\"click\", function() {\n  let data = dataOutput.value;\n  let file = new Blob([data], { type: \"text\/plain\" });\n  let downloadUrl = URL.createObjectURL(file);\n  let a = document.createElement(\"a\");\n  a.href = downloadUrl;\n  a.download = \"data.txt\";\n  document.body.appendChild(a);\n  a.click();\n});\n\nfunction extractData(text, dataType) {\n  let data = \"\";\n  switch (dataType) {\n    case \"phone\":\n      let phoneRegex = \/(\\d{3}[- .]??\\d{3}[- .]??\\d{4}|\\(\\d{3}\\)\\s*\\d{3}[- .]??\\d{4}|\\d{3}[- .]??\\d{4})\/g;\n      data = text.match(phoneRegex);\n      break;\n    case \"email\":\n      let emailRegex = \/\\S+@\\S+\\.\\S+\/g;\n      data = text.match(emailRegex);\n      break;\n    case \"url\":\n      let urlRegex = \/(https?:\\\/\\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%_\\+.~#?&\/\/=]*))\/g;\n      data = text.match(urlRegex);\n      break;\n    case \"keyword\":\n      \/\/ You can use different approach for extracting keywords,\n      \/\/ It can be done by using NLP library like NLTK, SpaCy etc.\n      break;\n    case \"username\":\n      let usernameRegex = \/@[a-zA-Z0-9_]+\/g;\n      data = text.match(usernameRegex);\n      break;\n    default:\n      break;\n  }\n  return data;\n}\n\n\n<\/script>\n<br><hr>\n\n<style>\nsection{\n         margin-top:60px;\n        width: 100%;\n        max-width: 970px;\n        background-color: #fff;\n        border: 1px solid #ddd;\n        padding: 25px;\n      }\ntextarea{height:200px;}\n<\/style>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Text Extractor Extract Phone NumbersEmail AddressesURLsKeywordsUsernames Copy Download as Text<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","footnotes":""},"class_list":["post-1542","page","type-page","status-publish"],"taxonomy_info":[],"featured_image_src_large":false,"author_info":{"display_name":"Billions Ideas","author_link":"https:\/\/tools.billionsideas.com\/nl_nl\/author\/loginbillionsideas-com\/"},"comment_info":0,"jetpack-related-posts":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/tools.billionsideas.com\/nl_nl\/wp-json\/wp\/v2\/pages\/1542","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tools.billionsideas.com\/nl_nl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/tools.billionsideas.com\/nl_nl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/tools.billionsideas.com\/nl_nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tools.billionsideas.com\/nl_nl\/wp-json\/wp\/v2\/comments?post=1542"}],"version-history":[{"count":0,"href":"https:\/\/tools.billionsideas.com\/nl_nl\/wp-json\/wp\/v2\/pages\/1542\/revisions"}],"wp:attachment":[{"href":"https:\/\/tools.billionsideas.com\/nl_nl\/wp-json\/wp\/v2\/media?parent=1542"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}