Sto tentando di sostituire 'eed' and 'eedly' with 'ee'
da parole in cui è presente una vocale prima che compaia il termine ('eed' or 'eedly')
.espressione regex per rimuovere eed dalla stringa
Quindi, ad esempio, la parola indeed
diventerebbe indee
perché c'è una vocale ('i') che si verifica prima del 'e'. D'altra parte la parola 'feed'
non cambierebbe perché non c'è vocale prima del suffisso 'eed'
.
Ho questa espressione regolare: (?i)([aeiou]([aeiou])*[e{2}][d]|[dly]\\b)
È possibile vedere cosa sta succedendo con questo here.
Come si può vedere, questo identifica correttamente le parole che terminano con 'eed'
, ma non identifica correttamente 'eedly'
.
Inoltre, quando si fa la sostituzione, sostituisce tutte le parole che terminano con 'eed'
, anche parole come feed
che non dovrebbe rimuovere il eed
Cosa devo essere considerato qui per rendere correttamente identificare le parole basate sulle regole che ho specificato?
Questo funziona perfettamente. Grazie. Ti dispiacerebbe spiegare la logica dietro questo un po 'di più? Sono relativamente nuovo di regex, quindi mi piacerebbe davvero imparare perché questo funziona. @anubhava – Anderology
ok controlla risposta aggiornata con spiegazione. – anubhava
Sì, grazie mille! – Anderology