¿Regex combina todo después del signo de interrogación?

Tengo un feed en Yahoo Pipes y quiero hacer coincidir todo después de un signo de interrogación.

Hasta ahora he descubierto cómo hacer coincidir el signo de interrogación usando …

\? 

Ahora solo para hacer coincidir todo lo que está después / sigue el signo de interrogación.

 \?(.*) 

Desea el contenido del primer grupo de captura.

Prueba esto:

 \?(.*) 

Los paréntesis son un grupo de captura que puede usar para extraer la parte de la cadena que le interesa.

Si la cadena puede contener nuevas líneas, puede que tenga que usar el modificador “dot all” para permitir que el punto coincida con el nuevo carácter de línea. Si tiene que hacer esto o no, y cómo hacerlo, depende del idioma que esté utilizando. Parece que olvidó mencionar el lenguaje de progtwigción que está utilizando en su pregunta.

Otra alternativa que puede usar si su lenguaje es compatible con aserciones de búsqueda de ancho fijo es:

 (?<=\?).* 

Con la técnica positiva lookbehind :

(?<=\?).*

(Estamos buscando un texto precedido por un signo de interrogación aquí)

 Input: derpderp?mystring blahbeh Output: mystring blahbeh 

Ejemplo

Básicamente,? ?<= Es una construcción de grupo, que requiere el signo de interrogación escapado, antes de que se pueda realizar cualquier coincidencia.

Funcionan muy bien, pero no todas las implementaciones los admiten.

 \?(.*)$ 

Si quieres unir todos los caracteres después de “?” puede usar un grupo para hacer coincidir cualquier char, y será mejor que use el signo “$” para indicar el final de la línea.

Echa un vistazo a este sitio: http://rubular.com/ Básicamente, el sitio te permite ingresar texto de ejemplo (lo que estarías buscando en tu sitio) y luego, al construir la expresión regular, resaltará lo que se está buscando en tiempo real.