string metody [liczenie wystąpień w tekście]

string metody [liczenie wystąpień w tekście]
SU
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 44
0

Witajcie.

Czytam sobie o różnych metodach dla String.

Tylko nie wiem jaka metoda służy do tego aby program liczył ile razy wystepuje jakas litera w tekscie. np

String imie = "Magdalena"

Co mam zrobic abyy system napisal ze litera a wystepuje tu 2 razy?

SU
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 44
0

tzn 3 razy:)

twonek
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2500
0
suchyq napisał(a):

Co mam zrobic abyy system napisal ze litera a wystepuje tu 2 razy?

Na początek: podać język programowania?

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Należy przeiterować po tym stirngu znak po znaku i zliczyć ile razy wystąpiła każda litera ;]

SU
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 44
0

chodzi o jezyk java

SU
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 44
0

dziekuje i czy to samo sie stosuje dla liczenia ile razy dany wyraz wystapil w tekscie?

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
2

Liczenie słów zrobiłbym tak:

Kopiuj
Map<String, Long> mapa = stringList.stream().collect(Collectors.groupingBy(entry -> entry, Collectors.counting()));

podpowiem że zliczanie liter można wykonać kodem analogicznym ;]

spartanPAGE
  • Rejestracja: dni
  • Ostatnio: dni
1
Kopiuj
StringUtils.countMatches("Magdalena", "a");
Wibowit
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: XML Hills
0

Można też tak: http://ideone.com/paR4tH

Kopiuj
	static int count1(String s, char c) {
		return s.split("" + c, -1).length - 1;
	}
 
	static int count2(String s, char c) {
		return s.length() - s.replace("" + c, "").length();
	}

Mało wydajne, ale jak chcesz wydajnie to pewnie Apache Commons Cośtam będzie dla ciebie OK.

M4
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 58
0

A można to zrobić w taki sposób?

Kopiuj
 
String magdalena = "Magdalena";
        int count = 0;
        for(int i = 0; i<magdalena.length(); i++)
            {
                if(magdalena.charAt(i)=='a') 
                    count++;
            }
        System.out.println(count);
            }

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.