Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    186

    cancellare ultimo carattere di uan stringa se

    Devo togliere la "s" da parole in inglese per renderle singolari. Avete idea di come si possa fare, così tolgo l'ultimo carattere

    Codice PHP:
    $newstring substr($string0, -1); 

    però come faccio a dirgli che deve toglierlo solo se la stringa finisce per "s" ?

  2. #2
    Leggi questa pagina.

    Anche se, ora che ci penso, non tutti i termini inglesi hanno il plurale allo stesso modo e possono essere resi al singolare semplicemente rimuovendo il suffisso.

    Credo che, per i primi, ti convenga creare un array contenente anche le eccezioni e poi fare in modo che in base a questo, dalla stringa vengano tolte le lettere contenute nell'array per restituire una stringa nuova, che dovrebbe restituire il termine al singolare.

    Ciao.

  3. #3
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    186
    Originariamente inviato da F@bius
    Leggi questa pagina.

    Anche se, ora che ci penso, non tutti i termini inglesi hanno il plurale allo stesso modo e possono essere resi al singolare semplicemente rimuovendo il suffisso.

    Credo che, per i primi, ti convenga creare un array contenente anche le eccezioni e poi fare in modo che in base a questo, dalla stringa vengano tolte le lettere contenute nell'array per restituire una stringa nuova, che dovrebbe restituire il termine al singolare.

    Ciao.
    si lo sò, ma l'elenco delle parole è limitato e i plurali finiscono tutti per "s".

    Cmq ho guardato la pagina che mi hai indicato ma non ho idea di che funzione usare

  4. #4
    Dunque, non essendo lucidissimo per l'ora, al momento me ne viene una sola in mente.

    Visto che tutti i termini finiscono per "s", calcoli il numero di caratteri che compone la stringa con la funzione

    Codice PHP:
    strlen(stringa); 
    che ti restituisce un numero intero. A questo punto dal numero sottrai 1 ed ottieni i caratteri che compongono la stringa fuorché l's finale.
    Quindi la ricomponi con questa funzione

    Codice PHP:
    substr(stringaintero [, intero]) 
    e la spiegazione ti viene data nella pagina che ti ho indicato.

    Spero di essere stato chiaro.

    Ciao.

  5. #5
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    186
    Ti ringrazio, ma il problema è che non tutte le stringhe hanno la s finale

    se tutti i termini finivano per "s" credo si faceva prima ad usare:

    Codice PHP:
    $newstring substr($string0, -1); 

  6. #6
    Originariamente inviato da fabrrrri
    Ti ringrazio, ma il problema è che non tutte le stringhe hanno la s finale
    Ma tu l'hai scritto:

    si lo sò, ma l'elenco delle parole è limitato e i plurali finiscono tutti per "s".
    :master:

  7. #7
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    186
    Originariamente inviato da F@bius
    Ma tu l'hai scritto:



    :master:
    e infatti è giusto, i plurali, però nella lista ci sono anche parole al singolare

  8. #8
    Magari se mi spieghi bene il meccanismo di conversione ti posso aiutare.

  9. #9
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    186
    Originariamente inviato da F@bius
    Magari se mi spieghi bene il meccanismo di conversione ti posso aiutare.
    c'è una lista di parole in inglese, alcune al plurale ad altre al singolare, quelle al plurale finiscono tutte con la "s", che vorrei togliere. Siccome devo usare queste parole come aggettivi, la "s" non ci và

  10. #10
    Studiati questo codice:

    Codice PHP:
    <pre>
    <?php 

    function removes($string) {
        if (
    substr($string, -1) == 's') {
            return 
    substr($string0, -1);
        }
        return 
    $string;
    }

    $words = array('room''rooms''place''places''face''faces''cat''cats');

    $words array_map('removes'$words);

    print_r($words);

    ?>
    </pre>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.