Regex Ruby Split sur plusieurs lignes

Ce n’est peut-être pas tout à fait la question à laquelle vous vous attendez! Je ne veux pas de regex qui corresponde aux sauts de ligne; au lieu de cela, je veux écrire une longue regex que, pour plus de lisibilité, je voudrais partager sur plusieurs lignes de code.

Quelque chose comme:

"bar" =~ /(foo| bar)/ # Doesn't work! # => nil. Would like => 0 

Peut-on le faire?

Vous devez utiliser le modificateur /x , qui active le mode d’espacement libre .

Utiliser% r avec l’option x est la manière préférée de le faire.

Voir cet exemple du guide de style github ruby

 regexp = %r{ start # some text \s # white space char (group) # first group (?:alt1|alt2) # some alternation end }x 

https://github.com/styleguide/ruby

vous pouvez utiliser:

 "bar" =~ /(?x)foo| bar/