Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 16 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Zvyraznenie vyhladavaneho slova v texte

Registrovaný: 28.02.09
Prihlásený: 19.02.18
Príspevky: 241
Témy: 56
Príspevok NapísalOffline : 26.07.2010 21:07

cawte pomozete mi ..potreboval by som dve veci....zistit poradie zadaneho slova v nejakom texte a potom nahradit slovo (nejakym inym) ktore sa nachadza v inom texte na rovnakej pozicii...hm? :) nemam sajnu ake funkcie pouzit ...

//zmeneny nazov temy (stenley)


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 14.04.09
Prihlásený: 18.01.22
Príspevky: 1188
Témy: 198
Príspevok NapísalOffline : 26.07.2010 22:47

Tak som sa nudil ak chces taketo moje krvopotne riesenie s mojimi oblubenymi funkciami explode() a implode() ktore pouzivam vsade kde sa da :lol: tak tu je riesenie:
Kód:
<?php
$slovo = "slovo";
$text = "toto je text a v nom slovo";
$text2 = "Toto je text v ktorom je nahradne slovo";
$pole = explode( " ", $text );
if( in_array( $slovo, $pole ) ) {
$pole_prevratene = array_flip( $pole );
$pozicia = $pole_prevratene[$slovo];
$pole2 = explode( " ", $text2 );
$pole[$pozicia] = $pole2[$pozicia];
$vysledny_text = implode( " ", $pole );
echo $vysledny_text;
}else{
echo "Taketo slovo sa v texte nenachadza";
}
?>


Ale urcite je zbytocne zdlhave ;) .


Offline

Správca fóra
Správca fóra
Zvyraznenie vyhladavaneho slova v texte

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 26.07.2010 23:07

co znamena rovnaka pozicia - pocet znakov alebo pocet slov od zaciatku? ak sa bude v texte dane slovo opakovat viackrat, co s tym?







_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 14.04.09
Prihlásený: 18.01.22
Príspevky: 1188
Témy: 198
Príspevok NapísalOffline : 26.07.2010 23:33

DeeJay3 píše:
zistit poradie zadaneho slova...nahradit slovo...rovnakej pozicii


A kedze poradie slova tak asi pocet slov od zaciatku ;) .

A na to ze v tom texte moze byt viac tych slov som nemyslel :-) . Ten script nahradi vzdy posledne. Ale aspon mas aku-taku metodu tak si to skus nejak upravit s pomocou ciklu.

edit// ...teda pokial chces nahradzat vsetky slova alebo ako to chces to nevieme.


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2
Príspevok NapísalOffline : 26.07.2010 23:53

1daemon1 píše:
Tak som sa nudil ak chces taketo moje krvopotne riesenie s mojimi oblubenymi funkciami explode() a implode() ktore pouzivam vsade kde sa da :lol: tak tu je riesenie:
Kód:
<?php
$slovo = "slovo";
$text = "toto je text a v nom slovo";
$text2 = "Toto je text v ktorom je nahradne slovo";
$pole = explode( " ", $text );
if( in_array( $slovo, $pole ) ) {
$pole_prevratene = array_flip( $pole );
$pozicia = $pole_prevratene[$slovo];
$pole2 = explode( " ", $text2 );
$pole[$pozicia] = $pole2[$pozicia];
$vysledny_text = implode( " ", $pole );
echo $vysledny_text;
}else{
echo "Taketo slovo sa v texte nenachadza";
}
?>


Ale urcite je zbytocne zdlhave ;) .

mohol by si mi pomocou tvojho krvopotne neskutocneho kodu rozparsovat napriklad
Citácia:
toto,je.text "a v[nom]" slovo
???


Offline

Užívateľ
Užívateľ
Zvyraznenie vyhladavaneho slova v texte

Registrovaný: 28.02.09
Prihlásený: 19.02.18
Príspevky: 241
Témy: 56
Príspevok Napísal autor témyOffline : 27.07.2010 0:03

vies chcem to pouzit pre vyhladavanie....prehladavam dve stlpce text s diakritikou aj bez a kedze chcem pri hladani vypisat text s diakritikou a vyznacit slovo mozny vysledok tak potrebujem zistit poziciu slova v texte bez diakritiky a potom ho zvyraznit v tom texte s diakritikou
Kód:
str_replace ($keyword, "<span style=\"background-color:yellow\">{$keyword}</span>",$zaznam['popis']);

$keyword je slovo ktore zadas do vyhladavania takto ho vyznacim v texte ktory je s diakritikou a potom ces ten tvoj script zvyraznim slovo ktore naslo ako mozny vysledok v tom texte bez diakritiky...idem to skusit...


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 14.04.09
Prihlásený: 18.01.22
Príspevky: 1188
Témy: 198
Príspevok NapísalOffline : 27.07.2010 0:06

coldak:

1. myslel som to tak ze je zbytocne dlhy, mozno budu nato lepsie funkcie :roll: .
2. pomohol som ako som vedel. ak sa mu to bude hodit, pouzije to, ak nie, napise ze to je nanic a niekto da lepsie riesenie. som zvedavy ake. a hlavne som zvedavy ako chces v hantakom texte pocitat poradie slov :roll: . Ak bude chciet, upravi si to a napriklad najprv poodstranuje z textu urzite znaky (bodka, ciarka,...) tak aby ostali slova. chcel som ho aspon nakopnut.


Offline

Správca fóra
Správca fóra
Zvyraznenie vyhladavaneho slova v texte

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 27.07.2010 8:47

DeeJay3 píše:
vies chcem to pouzit pre vyhladavanie....prehladavam dve stlpce text s diakritikou aj bez a kedze chcem pri hladani vypisat text s diakritikou a vyznacit slovo mozny vysledok tak potrebujem zistit poziciu slova v texte bez diakritiky a potom ho zvyraznit v tom texte s diakritikou
Kód:
str_replace ($keyword, "<span style="background-color:yellow">{$keyword}</span>",$zaznam['popis']);

$keyword je slovo ktore zadas do vyhladavania takto ho vyznacim v texte ktory je s diakritikou a potom ces ten tvoj script zvyraznim slovo ktore naslo ako mozny vysledok v tom texte bez diakritiky...idem to skusit...

v tom pripade myslim ze staci pouzit preg_replace







_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
Zvyraznenie vyhladavaneho slova v texte

Registrovaný: 28.02.09
Prihlásený: 19.02.18
Príspevky: 241
Témy: 56
Príspevok Napísal autor témyOffline : 27.07.2010 12:24

funguje to pekne len..hmm..nevedel by si spravit aby to nahradilo kazde slovo?...upravil som si ju takto...
Kód:
function show_name($text,$text2,$keyword){
   $pole = explode( " ", $text );
   $pole_prevratene = array_flip( $pole );
   $pozicia = $pole_prevratene[$keyword];
   $pole2 = explode( " ", $text2 );
   $vysledny_text = implode( " ", $pole2 );
   $vysledny_text = str_replace ($pole2[$pozicia], "<span style=\"background-color:yellow\">{$pole2[$pozicia]}</span>",$vysledny_text);
   $vysledny_text = str_replace ($keyword, "<span style=\"background-color:yellow\">{$keyword}</span>",$vysledny_text);
   return $vysledny_text;
}


$text -> text s diakritikou
$text2 -> text bez diakritiky
$keyword -> hladane slovo bez diakritiky


Offline

Užívateľ
Užívateľ
Zvyraznenie vyhladavaneho slova v texte

Registrovaný: 28.02.09
Prihlásený: 19.02.18
Príspevky: 241
Témy: 56
Príspevok Napísal autor témyOffline : 27.07.2010 12:38

stenley píše:
v tom pripade myslim ze staci pouzit preg_replace

preco stacilo by?


Offline

Správca fóra
Správca fóra
Zvyraznenie vyhladavaneho slova v texte

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 27.07.2010 13:39

vyhladavas napr. slovo myska, prekonvertujes si ho na "m[yý][sš]k[aáä]" (pripadne pouzijes prepinace) a pouzijes ako pattern... otazna je vsak rychlost oproti vyssie uvedenemu rieseniu...







_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 14.04.09
Prihlásený: 18.01.22
Príspevky: 1188
Témy: 198
Príspevok NapísalOffline : 27.07.2010 14:16

Ak tam chces vymenit vsetky slova staci dat ciklus:
Kód:
<?php
$slovo = "slovo";
$text = "toto je text a v nom slovo a dalsie slovo";
$text2 = "Toto je text v ktorom je nahradne slovo a bla bla bla bla bla";
$pole = explode( " ", $text );
if( !in_array( $slovo, $pole ) ){
  echo "Taketo slovo sa v texte nenachadza";
} else {
  while( in_array( $slovo, $pole ) ) {
    $pole_prevratene = array_flip( $pole );
    $pozicia = $pole_prevratene[$slovo];
    $pole2 = explode( " ", $text2 );
    $pole[$pozicia] = $pole2[$pozicia];
    $vysledny_text = implode( " ", $pole );
  }
  echo $vysledny_text;
}
?>


Ak chces aby ten script fungoval aj pri takom texte ako napisal coldak:
coldak píše:
toto,je.text "a v[nom]" slovo


Tak najprv pomocou trebars preg_replace() vymen v $text a $text2 vsetky znaky ako je bodka, ciarka, uvodzovky, vykricnik, zatvorky, atd... za medzery a potom odstran nadbytocne medzery nejak takto:
Kód:
$text = preg_replace('/\s\s+/', ' ', $text_bez_znaciek_s_nadbitocnymi_medzerami);
$text2 = preg_replace('/\s\s+/', ' ', $text2_bez_znaciek_s_nadbitocnymi_medzerami);


Offline

Užívateľ
Užívateľ
Zvyraznenie vyhladavaneho slova v texte

Registrovaný: 28.02.09
Prihlásený: 19.02.18
Príspevky: 241
Témy: 56
Príspevok Napísal autor témyOffline : 27.07.2010 15:15

waw super toto som cel len neviem preco ked si to upravim podla seba tak to nerobi to co ma :/..kukni na to...toto mi nahradi to slovo

Kód:
$text = "Toto je text a v nom slovo a dalsie slovo a v nom este dalsie slovo";
$text2 = "toto je text a v ňom slovo a ďalšie slovo a v ňom ešte ďalšie slovo";
$pole = explode( " ", $text );

  while( in_array( $keyword, $pole ) ) {
    $pole_prevratene = array_flip( $pole );
    $pozicia = $pole_prevratene[$keyword];
    $pole2 = explode( " ", $text2 );
    $pole[$pozicia] = '<span style="background:yellow">'.$pole2[$pozicia].'</span>';
    $vysledny_text = implode( " ", $pole );
  }
  echo $vysledny_text;


toto mi nahradi pozicie v texte bez diakritiky ale ja potrebujem v tom s diakritikou...

potrebujem nahradit slova na poziciach v texte 2 kde sa v texte 1 nachadza hladane slovo...toto co si napisal funguje super len to neviem dobre upravit :/


Offline

Správca fóra
Správca fóra
Zvyraznenie vyhladavaneho slova v texte

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 27.07.2010 15:26

nezabudaj, ze tento pripad neriesi diakritiku a velkost pismen, cize ak da niekto vyhladat napriklad "Slovo", tak ti "slovo" v texte nezvyrazni...







_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
Zvyraznenie vyhladavaneho slova v texte

Registrovaný: 28.02.09
Prihlásený: 19.02.18
Príspevky: 241
Témy: 56
Príspevok Napísal autor témyOffline : 27.07.2010 16:54

potrebujem to preto ze ludia do vyhladavania nedavaju velmi slova s diakritikou takze vecsina ludi zadava do vyhladavania napriklad "suciastka" namiesto "súčiastka" kedze texty mam ulozene v dvoch verziach tak aj slovo "súčiastka " aj slovo "suciastka" najde ja len potrebujem zvyraznit slovo ktore je na danej pozicii v texte bez diakritiky aby ho zvyraznilo v texte s diakritikou ktory bude vypisovat


len keby som to este vedel opravit stale sa mi to akoby zacykli sa mi zda


Offline

Správca fóra
Správca fóra
Zvyraznenie vyhladavaneho slova v texte

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 27.07.2010 18:07

ake kodovanie pouzivas? kebyze pouzivas utf8, tak by som to spravil nejak takto:
Kód:
<?php
$search = "nÍeČo";
$text = "nieco aj niEČooo aj niecóo mozno";

$convtbl = array(
   'a' => '[aáäAÁ]',   'b' => '[bB]',      'c' => '[cčCČ]',
   'd' => '[dďDĎ]',   'e' => '[eéEÉ]',   'f' => '[fF]',
   'g' => '[gG]',      'h' => '[hH]',      'i' => '[iíIÍ]',
   'j' => '[jJ]',      'k' => '[kK]',      'l' => '[lľĺLĽĹ]',
   'm' => '[mM]',      'n' => '[nN]',      'o' => '[oóôOÓ]',
   'p' => '[pP]',      'q' => '[qQ]',      'r' => '[rŕRŔ]',
   's' => '[sšSŠ]',   't' => '[tťTŤ]',   'u' => '[uúUÚ]',
   'v' => '[vV]',      'w' => '[wW]',      'x' => '[xX]',
   'y' => '[yýYÝ]',   'z' => '[zžZŽ]'
);

//odstranenie diakritiky s vyuzitim $convtbl
foreach($convtbl as $key => $value) {
   $value = substr($value, 2, -1);
   while(mb_strlen($value)) {
      $tmp[mb_substr($value, 0, 1, "utf-8")] = $key;
      $value = mb_substr($value, 1, mb_strlen($value), "utf-8");
   }
}

$search = str_replace(array_keys($tmp), array_values($tmp), $search);
$search = str_replace(array_keys($convtbl), array_values($convtbl), $search);

echo mb_ereg_replace($search, "<b>\\0</b>", $text);
?>







_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Odpovedať na tému [ Príspevkov: 16 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. Zvyraznenie textu

v PHP, ASP

2

393

25.01.2010 9:53

achbo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Zvyraznenie hlbok(basov)

v Audio programy

14

2453

11.06.2008 22:41

OmeGa Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Zvýraznenie menu bez include

v PHP, ASP

10

517

19.05.2008 8:25

p360t Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. CSS Menu - zvyraznenie aktivneho odkazu

v HTML, XHTML, XML, CSS

3

537

29.07.2009 14:22

myxall Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Zvyraznenie menu na aktivnej stranke

v PHP, ASP

3

344

10.07.2010 23:58

php30 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Zvyraznenie obrysov na čiernobielom obrázku.

v Grafické programy

5

698

12.08.2009 23:31

yossarian Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. slovo v texte

v PHP, ASP

12

772

08.03.2008 1:57

kmsa Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Vyhľadávanie v texte

v JavaScript, VBScript, Ajax

5

1020

17.04.2008 19:00

pa3ck Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. odsek v texte

v PHP, ASP

8

660

08.12.2007 19:33

jaji Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Veľké medzeri v texte

v Operačné systémy Microsoft

0

241

22.07.2012 21:15

samson3333 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. FTP v sublime texte

v Ostatné

1

279

26.03.2014 18:15

BX Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Zvyraznenie jednej farby v SONY Vegas Pro 11

v Video programy

0

294

03.01.2014 15:09

Peeppo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Excel - vzorec na poziciu v texte

v Ostatné programy

3

745

20.05.2007 11:08

ONder Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Kľúčové slová

v Ostatné

19

744

19.11.2011 22:50

Hawkie Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Herný PC za 1000€ (zostava v texte)

[ Choď na stránku:Choď na stránku: 1, 2 ]

v PC zostavy

58

2001

08.04.2017 22:37

Miso122 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Význam slova Vram

v nVidia grafické karty

8

2237

11.09.2011 1:33

thebastard Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra