Pozice v textu – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Pozice v textu – C / C++ – Fórum – Programujte.comPozice v textu – C / C++ – Fórum – Programujte.com

 

Pavel
~ Anonymní uživatel
383 příspěvků
28. 10. 2019   #1
-
0
-

Chtěl bych se zeptat zda-li neřešil někdy někdo, že mám nějaký zdrojový text pevně uložený jako řetězec a druhý řetězec, kde je to co hledám v prvním řetězci a chci najít na jakých pozicích se můj hledaný řetězec objevuje v hledaném řetězci.

Nahlásit jako SPAM
IP: 217.170.105.–
Stampl
~ Anonymní uživatel
7 příspěvků
28. 10. 2019   #2
-
0
-
Nahlásit jako SPAM
IP: 178.41.33.–
Pavel
~ Anonymní uživatel
383 příspěvků
28. 10. 2019   #3
-
0
-

char text[] = "novyhrac";
char vzor[] = "hrac";

 

a já právě potřebuji, aby mi vypsal, že hrac začíná na 4 pozici.

Nahlásit jako SPAM
IP: 217.170.105.–
Pavel
~ Anonymní uživatel
383 příspěvků
28. 10. 2019   #4
-
0
-

Jinak to potřebuji do c :)

Nahlásit jako SPAM
IP: 217.170.105.–
Pavel
~ Anonymní uživatel
383 příspěvků
28. 10. 2019   #5
-
0
-

a pokud je tam např text novyhrachrac

tak vypsat, že se to nachází jak na 4 a 8 pozici zatím vyřeším to jedno, ale jak vyřešit to druhé

Nahlásit jako SPAM
IP: 217.170.105.–
gna
~ Anonymní uživatel
1891 příspěvků
28. 10. 2019   #6
-
0
-

#5 Pavel
To druhé bude úplně stejně jako to první. Prostě po prvním budeš pokračovat.

Nahlásit jako SPAM
IP: 213.211.51.–
Pavel
~ Anonymní uživatel
383 příspěvků
28. 10. 2019   #7
-
0
-

#include <stdlib.h>
#include <string.h>

int main()
{
char vzor[]="blablabla";
char *s;

s = strstr(vzor, "la");      
 if (s != NULL) 
 {
     printf("Shoda nalezena na pozici: %d\n", s - vzor);
 }                               
 else
 {
     printf("Shoda nenalezena\n");
 }
 }

Nahlásit jako SPAM
IP: 217.170.105.–
Pavel
~ Anonymní uživatel
383 příspěvků
28. 10. 2019   #8
-
0
-

Tady najdu vždy ten daný prvek, ale další nehledá tudíž musím dát do cyklu, ale osobně nevím co projít zda znovu projít ten vzor a aplikovat na něj můj klíč "bl" a nebo jen přičíst počítadlo a "popojít" ve vzoru dále za každou radu budu rád.

Nahlásit jako SPAM
IP: 217.170.105.–
gna
~ Anonymní uživatel
1891 příspěvků
28. 10. 2019   #9
-
0
-

   

char kde[] = "blablabla";
char co[] = "la";

char *p = kde;
while ((p = strstr(p, co)) != NULL) {
	printf("%d\n", (int) (p - kde));
	p += strlen(co);
}
Nahlásit jako SPAM
IP: 213.211.51.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 76 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý