multisplit.sf 322 B

12345678910111213141516
  1. #!/usr/bin/ruby
  2. #
  3. ## https://rosettacode.org/wiki/Multisplit
  4. #
  5. func multisplit(sep, str, :opt) {
  6. sep = sep.map{.escape}.join('|');
  7. var re = Regex.new(opt{:keep_sep} ? "(#{sep})" : sep);
  8. str.split(re, -1);
  9. }
  10.  
  11. [false, true].each { |bool|
  12. say multisplit(%w(== != =), 'a!===b=!=c', keep_sep => bool);
  13. }