¿Cómo uso los comandos de Pat para encontrar la última instancia de un personaje?Hola. Estoy tratando de usar un comando Pat para encontrar la última instancia de un carácter en una cadena. Además, quiero guardar todos los caracteres que siguen a la última instancia en una variable. Por ejemplo, quiero encontrar la última "t" en "Timothy the Tiger se está tomando su tiempo". y luego guarda "ime". a una variable ya que esos caracteres siguen la última instancia de "t" en la cadena. ¿Hay alguna manera de hacer esto usando los comandos de Pat?
Puedo recurrir al uso de los comandos Contains () y Right (), pero me preguntaba específicamente cómo realizar esto de manera más elegante utilizando los comandos Pat.
Re: ¿Cómo uso los comandos de Pat para encontrar la última instancia de un personaje?¡Gracias!
Re: ¿Cómo uso los comandos de Pat para encontrar la última instancia de un personaje?El ". + T" coincide con cualquier secuencia de uno o más caracteres que termina con "t". Dado que la expresión regular por defecto es codiciosa, solo coincide con la última "t".
". * t" coincide con cero o más caracteres de chat que terminan con "t", que puede ser mejor aquí si la primera letra es la única "t".
Re: ¿Cómo uso los comandos de Pat para encontrar la última instancia de un personaje?En el comando Pat Regex, ¿qué hace el ". + T"? ¿Esto funcionaría si no hubiera terminado la cadena con un "."?
Re: ¿Cómo uso los comandos de Pat para encontrar la última instancia de un personaje?Aquí hay dos maneras de hacer esto. Las funciones de Pat del primer uso (que lamentablemente uso raramente), las Regex del segundo uso (con las que estoy más familiarizado). Ciertamente hay otras formas de hacer esto.
s = "Timothy the Tiger is taking his time.";
// With Pat functions
Pat Match(s, Pat Regex(".+t") + Pat Rem() >> last);
// Or the eqivalent with regular expressions
end = Regex(s, ".+t(.+)", "\1");
Show(last, end);
/*:
last = "ime.";
end = "ime.";