Skip to content

Instantly share code, notes, and snippets.

@LukazAllan
Last active June 17, 2020 01:01
Show Gist options
  • Save LukazAllan/02844666ed92d2a4c452e8797818212e to your computer and use it in GitHub Desktop.
Save LukazAllan/02844666ed92d2a4c452e8797818212e to your computer and use it in GitHub Desktop.
<!DOCTYPE html>
<!-- saved from url=(0014)about:internet -->
<html lang="pt" data-lt-installed="true"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0">
<title>Contador de Caracteres, Palavras e Linhas | invertexto.com</title>
<meta name="description" content="Ferramenta online para contar a quantidade de caracteres, palavras e linhas de um texto. Contador de caracteres simples e rápido.">
<meta property="og:title" content="Contador de Caracteres, Palavras e Linhas">
<meta property="og:type" content="website">
<meta property="og:url" content="https://www.invertexto.com/contador-caracteres">
<meta property="og:image" content="https://www.invertexto.com/img/face-note.png">
<meta property="og:site_name" content="invertexto.com">
<meta property="og:description" content="Ferramenta online para contar a quantidade de caracteres, palavras e linhas de um texto. Contador de caracteres simples e rápido.">
<meta property="fb:app_id" content="515652911960455">
<link rel="canonical" href="https://www.invertexto.com/contador-caracteres">
<link href="https://www.invertexto.com/favicon.ico" rel="shortcut icon" type="image/ico">
<link href="./Contador de Caracteres, Palavras e Linhas _ invertexto.com_files/app-v1.7.7.css" rel="stylesheet">
<script async="" src="./Contador de Caracteres, Palavras e Linhas _ invertexto.com_files/analytics.js.download"></script><script data-ad-client="ca-pub-1714195545121238" async="" src="./Contador de Caracteres, Palavras e Linhas _ invertexto.com_files/f.txt"></script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-73907168-2', 'auto');
ga('send', 'pageview');
</script>
</head>
<body>
<header class="hidden-print">
<div class="top">
<div class="container">
<div class="row">
<div class="col-sm-11 col-md-9 col-lg-8">
<a href="https://www.invertexto.com/" class="logo">
<img src="./Contador de Caracteres, Palavras e Linhas _ invertexto.com_files/logo.svg" alt="invertexto.com">
</a>
</div>
<div class="col-sm-13 col-md-15 col-lg-16 banner hidden-xs">
<script async="" src="./Contador de Caracteres, Palavras e Linhas _ invertexto.com_files/f.txt"></script>
<!-- Responsive -->
<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-0032213399467558" data-ad-slot="1888019684" data-ad-format="horizontal"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
</div>
</div>
</div>
<nav class="navbar navbar-default navbar-static-top">
<div class="container">
<div class="like pull-left">
<iframe src="./Contador de Caracteres, Palavras e Linhas _ invertexto.com_files/like.html" width="106" height="21" style="border:none;overflow:hidden" scrolling="no" frameborder="0" allowtransparency="true" allow="encrypted-media"></iframe>
</div>
<style>
a.btnInsta{display:block;background-color:rgb(224, 53, 102);height:20px;color:#fff;font-size:12px;padding:0 6px;line-height:20px;border-radius:4px;float:left;margin-left:5px}
a.btnInsta:hover,a.btnInsta:focus{text-decoration:none}
</style>
<div class="like pull-left"><a href="https://www.invertexto.com/guia-lives" class="btnInsta">Guia de Lives</a></div>
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Menu</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="https://www.invertexto.com/">Principal</a></li>
<li><a href="https://www.invertexto.com/sobre">Sobre</a></li>
<li><a href="https://www.invertexto.com/contato">Contato</a></li>
</ul>
</div>
</div>
</nav>
</header>
<main>
<style>
.show-result{
margin-top:5px;
}
</style>
<div class="func-wrap container">
<h1>Contador de Caracteres</h1>
<div class="box">
<div class="legenda">Digite ou cole o texto no campo abaixo:</div>
<textarea name="origem" class="form-control origem" id="texto"></textarea>
<div class="show-result">
Caracteres: <span class="number" id="chars">0</span>
Palavras: <span class="number" id="words">0</span>
Palavras Válidas: <span class="number" id="valid">0</span>
Palavras Repetidas: <span class="number" id="rep">0</span>
Linhas: <span class="number" id="lines">0</span>
</div>
</div>
</div>
<script>
function run(){
$('#texto').on('input', function(){
var texto = $('#texto').val();
var c = texto.length;
//var w = texto.split(/\S+/).length - 1;
var fullStr = texto + " ";
var initial_whitespace_rExp = /^[^\wÀ-ú]+/gi;
var left_trimmedStr = fullStr.replace(initial_whitespace_rExp, "");
var non_alphanumerics_rExp = rExp = /[^\wÀ-ú']+/gi;
var cleanedStr = left_trimmedStr.replace(non_alphanumerics_rExp, " ");
var splitString = cleanedStr.split(" ");
var w = splitString.length - 1;
var lines = texto.split("\n");
var l = (texto.length==0) ? 0 : lines.length;
function count(el, arr){
/*Retorna um Number que representa quantas vezes ele repete no array.*/
var count = 0;
for (i = 0; i < arr.length; i++){
if (arr[i] === el){
count++;
}
}
return count;
}
function notRepeat(arr) {
/*Retorna um Array sem valores repetidos, textos retornam em lowercase.*/
let volta = [];
for (c = 0; c < arr.length; c++){
if (volta.includes(arr[c].toLowerCase()) === False){
volta.push(arr[c].toLowerCase();
}
}
return volta;
}
console.log(notRepeat(splitString))
$('#chars').text(c);
//$('#valid').text(count("o", splitString));str.toLowerCase();
$('#words').text(w);
$('#lines').text(l);
});
}
/*Atualmente, o mundo passa por uma crise sem precedentes, onde as relações já não se dão da mesma forma como eram antes. Desde aquele anúncio da quarentena, todos sabiam que não iriam ficar algumas semanas, mas vários meses. Nesse sentido, toda ansiedade e medo as enlouqueceriam se ficassem paradas. Inicialmente, o isolamento não fora respeitado no começo, entretanto, à medida que foi aumentando os números, amorosamente os cidadãos foram lentamente aderindo.
Nesse ínterim, a solução foi simples, se entreter. Embora não pudéssemos sair de nossas casas, através de jogos, "streaming" e redes sociais, fortíssimos aliados que nos mantiveram longe das notícias ruins, porém, sempre se mantendo informados. Imediatamente, números das empresas atuantes na “internet”, começaram batendo recordes semanalmente, ainda em maio, uma loja de jogos digitais, "Steam", havia ultrapassado sua média em tráfegos simultâneos chegando até, impressionantes, vinte e dois milhões de acessos. Inclusive, mesmo aqueles, preservando o curso de seus trabalhos, houve pico em outras aplicações de videochamada, como o "Zoom", acrescentou duzentos mil usuários diários neste período.
Portanto, a chegada do coronavírus, descartando seus malefícios, acarretou um impulso em direção à tecnologia. Hoje, não há grandes motivos para sairmos de casa, quando se pode resolver navegando na "web". Buscamos a “internet” em nossos computadores para falar com as pessoas que gostamos, até mesmo jogar ou interagir, mediante jogos, conversas de "WhatsApp" e historietas com quinze segundos no "Instagram".*/
</script> </main>
<div class="container hidden-print">
<div class="bottom-banner">
<script async="" src="./Contador de Caracteres, Palavras e Linhas _ invertexto.com_files/f.txt"></script>
<ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-0032213399467558" data-ad-slot="3778065286" data-ad-format="auto"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
</div>
<footer class="hidden-print"></footer>
<script src="./Contador de Caracteres, Palavras e Linhas _ invertexto.com_files/app-v1.js.download"></script>
<script>
if (typeof run === "function") {
run();
}
</script>
</body></html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment