Básicamente, no tengo ninguna experiencia en lo que respecta a expresiones regulares, y tengo una comprensión básica de la manipulación de cadenas. Estoy tratando de separar una etiqueta de discordia del resto de una cadena, pero tengo problemas.
Por ejemplo, pude separar una etiqueta como vunsh#3191 de 'vunsh#3191 ha hecho bla, bla, bla'. Pero cuando una etiqueta de discordia tiene un espacio u otros caracteres, no lo detecta con el sistema que estoy usando en este momento.
Ex. Mi sistema actual obtendría solo vunsh's de vunsh's discord#1234 blah blah blah . Necesito vunsh's discord#1234
Encontré un método llamado string#match(), y parece ser lo que estoy buscando. Lo que me cuesta es qué poner como patrón de expresiones regulares que pasa a #match().
Ex.
const paragraph = 'vunsh thing#2134 blah blah'; const regex = //what goes here? const found = paragraph.match(regex); console.log(found); // expected output: Array ["vunsh thing#2134"]Nota: No todas las cadenas con las que estoy trabajando contienen la palabra "vunsh", pero todas las etiquetas de discordia tienen un # y 4 números justo después de eso.
podrías usar
const regex = /.*#\d{4}\b/g;Pero esto no funcionará en todos los casos donde hay texto antes del nombre de usuario, para eso no hay solución.