Prodej projektu Duchod.cz - SLEVA
Zobrazují se odpovědi 1 až 4 z 4

Regulární výraz odstranění titulů před jménem a za jménem

  1. Zdravím, řeším problém, že potřebuji u jmen odstranit tituly vzdělání, které se nachází před a za jménem. Nemá někdo nějaký nápad jak to jednoduše udělat v php?

    Děkuji

  2. Co se právě děje na Webtrhu?
  3. Ahoj, za předpokladu, že tituly mají vždy tečku na konci lze udělat toto:

    preg_replace( '/\ ?([a-zA-Z]+\.)\ ?/', '', $string );

    Kdyby tam bylo ale např. Václav Klaus ml., tak příjdeš i o to. Potom by šel udělat pouze seznam titulů a ty cíleně odstranit.

  4. No to nie je take lahke. Lebo tituly mozu mat bodky, ciarky a medzery, podla toho ako ich ludia napisu. Nie vzdy su pritomne, niekedy ich je viac a td. Aj ked vies ze mas vzdy len meno a priezvisko a nie ako v US naprikald dve mena a priezvisko, pripadne azia kde je to uplny mismas, tak mozes skusit pouzit explode(' ', $meno) ale aj tak by si musel tie jednotlive stringy nejak analyzovat. Lebo mozes mat napriklad "Jan Novak Mgr" kde Mgr a Jan su tri znaky a ty nevies ci Jan alebo Mgr su meno alebo priezvisko alebo co. Osobne by som si spravil pole so vsetkymi znamymi titulmi a input si prebehol cez ten explode a nasledne by som si analyzoval kazdu polozku cez nejaku funkciu ktora by mi vratila percentualnu zhodu s nejakym titulom a pri 90% a viac by som to bral ako ze je to titul a odobral ho z toho pola cez unset a vratil s implode ako finalny string.

  5. Myslím že pro běžné použití by úplně stačil ten seznam titulů a ty z jména odstranit - pokud to má být aplikace pro ČR. Možná se najde nějaké 0,01% lidí co budou mít nějaký úplně jiný titul, ale to bych asi neřešil. Bude to relativně jednoduché a rychle napsané, seznam stáhneš třeba na wikipedii...S tím že použiješ "doc.", "doc", ",doc", ", doc" (ty varianty můžeš do pole nalít třeba v cyklu - ke každému titulu přidáš tečku, mezeru, čárku..a jako vstup ti stačí jen jmenný seznam titulů).

    Záleží jak moc 100% výsledek potřebuješ mít.

Hostujeme u Server powered by TELE3