Ho un feed in Yahoo Pipes e desidero abbinare tutto dopo un punto interrogativo.
Finora ho capito come abbinare il punto interrogativo usando ..
\?
Ora solo per abbinare tutto ciò che è dopo / segue il punto interrogativo.
"\\?"
Ho un feed in Yahoo Pipes e desidero abbinare tutto dopo un punto interrogativo.
Finora ho capito come abbinare il punto interrogativo usando ..
\?
Ora solo per abbinare tutto ciò che è dopo / segue il punto interrogativo.
"\\?"
Risposte:
\?(.*)
Vuoi il contenuto del primo gruppo di acquisizione.
Feb 5 '11 at 10:41. È comunque utile sottolineare ogni cambiamento che otteniamo. Forse qualcuno imparerà da Dreamonic sottolineando questo.
Prova questo:
\?(.*)
Le parentesi sono un gruppo di cattura che puoi usare per estrarre la parte della stringa che ti interessa.
Se la stringa può contenere nuove righe, potrebbe essere necessario utilizzare il modificatore "punto tutto" per consentire al punto di corrispondere al carattere della nuova riga. Se devi o meno farlo e come farlo, dipende dalla lingua che stai usando. Sembra che tu abbia dimenticato di menzionare il linguaggio di programmazione che stai usando nella tua domanda.
Un'altra alternativa che puoi utilizzare se la tua lingua supporta le asserzioni lookbehind a larghezza fissa è:
(?<=\?).*
Con la tecnica del lookbehind positivo :
(?<=\?).*
(Stiamo cercando un testo preceduto da un punto interrogativo qui)
Input: derpderp?mystring blahbeh
Output: mystring blahbeh
Fondamentalmente ?<=è un costrutto di gruppo, che richiede il punto interrogativo di escape, prima di poter effettuare qualsiasi corrispondenza.
Funzionano davvero bene, ma non tutte le implementazioni li supportano.
\?(.*)$
Se vuoi far corrispondere tutti i caratteri dopo "?" puoi usare un gruppo per abbinare qualsiasi carattere, e faresti meglio a usare il segno "$" per indicare la fine della riga.
.impostazione predefinita non corrisponde al nuovo carattere di riga. Di conseguenza, anche senza il carattere di fine riga nell'espressione, corrisponderebbe fino alla fine della riga.
Dai un'occhiata a questo sito: http://rubular.com/ Fondamentalmente il sito ti consente di inserire del testo di esempio (quello che cercheresti sul tuo sito) e poi mentre costruisci l'espressione regolare evidenzierà ciò che viene abbinato tempo reale.
/([a-zA-Z]{4}):/abbinerà Test: Welcomee prenderàTest
str.replace(/^.+?\"|^.|\".+/, '');
Questo a volte è male da usare quando vuoi selezionare cos'altro rimuovere tra "" e non puoi usarlo più di due volte in una stringa. Tutto ciò che fa è selezionare tutto ciò che non è tra "" e sostituirlo con niente.
Anche per me è un po 'confuso, ma cercherò di spiegarlo. ^.+?(niente FACOLTATIVO) fino al primo "poi |Or / stop (ancora alla ricerca di cosa significhi realmente) fino a che / at non ^.ha selezionato nulla fino a prima del 2 ° "utilizzando ( |stop / at). E seleziona tutto ciò che viene dopo con. +.
\?.*corrisponde a tutto (inclusa una stringa vuota) dopo?.