• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Liczenie słów

Cloud VPS
0 głosów
388 wizyt
pytanie zadane 8 kwietnia 2019 w PHP przez Whereismycode Obywatel (1,710 p.)

W jaki sposób mogę uniknąc liczenia tagów html takich jak:

<b> 
<u> 
<i> 

Wiem, że do samego zliczania słów przyda się ta funkcja:

str_word_count();

Przykłądowy tekst:

<b>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</b>

Powyżej podany przykład z użyciem funkcji str_word_count wyrzuca wynik 10 słów łącznie z tagami.

2 odpowiedzi

0 głosów
odpowiedź 8 kwietnia 2019 przez OdsetekGlupoty Pasjonat (15,360 p.)
wybrane 8 kwietnia 2019 przez Whereismycode
 
Najlepsza

Witam,

Możesz po prostu policzyć ilość spacji i do tej liczby dodać 1 (ostatnie słowo).

<?php
function countWords($text) {
	return substr_count($text, " ") + 1;
}

echo countWords("<b><i><u>Losowy testowy ciąg znakowy</u></i></b>")

 

+1 głos
odpowiedź 8 kwietnia 2019 przez Groshq Użytkownik (590 p.)
Zgodnie ze standaryzacją przejrzystości HTML'a nie korzysta się z tych tagów, żeby wyróżnić element używa się <span class="lorem">lorem</span>, zamiast liczyć wszystko gotową funkcją zliczał bym spacje, dodając oczywiście na końcu +1.  

Ewentualnie użyć twoją funkcję,  zanim drugą, która ci zliczy tagi, matematyka i masz prawidłowy wynik.

Podobne pytania

0 głosów
2 odpowiedzi 207 wizyt
pytanie zadane 13 stycznia 2017 w Inne języki przez Adrakh Nowicjusz (120 p.)
0 głosów
1 odpowiedź 682 wizyt
pytanie zadane 22 września 2019 w PHP przez Kaiena Nowicjusz (120 p.)
0 głosów
1 odpowiedź 143 wizyt
pytanie zadane 24 stycznia 2019 w PHP przez Patryk Kacprowicz Nowicjusz (230 p.)

93,464 zapytań

142,459 odpowiedzi

322,730 komentarzy

62,844 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...