# [Jelly], <s> 52 51 </s> 49 [bytes] <sup>Jelly has not got one regex(s) atom</sup> Ṫ Ñ;”s Ṫḣ-3 UṪw“)s(”⁼1 “µḣ⁴µuʠg*»ḲċḢ‘×Ç‘ ⁶;ḲÇĿ2ƤK A full program accepting a string (using Python formatting if multiline or containing quotes) and printing the output. **[Try it online!][TIO-j884vnh0]** ### How? Ṫ - Link 1, tail: two words (list of lists) Ṫ - tail Ñ;”s - Link 2, tail and replace last three chars with an 's': two words (list of lists) Ñ - call the next link (3) as a monad ”s - literal 's' ; - concatenate Ṫḣ-3 - Link 3, tail and remove the last three chars: two words (list of lists) Ṫ - tail -3 - literal minus three ḣ - head from index (1-indexed and modular) UṪw“)s(”⁼1 - Link 4, tail ends with "(s)"?: two words (list of lists) U - upend (reverse each word) Ṫ - tail “)s(” - literal [')', 's', '('] - that is "(s)" reversed w - index of first sublist equal to that or 0 if not found 1 - literal one ⁼ - equal? “µḣ⁴µuʠg*»ḲċḢ‘×Ç‘ - Link 5, categorise: two words (list of lists) “µḣ⁴µuʠg*» - compression of string "a 1" + word " an" + word " one" Ḳ - split on spaces = ["a", "1", "an", "one"] Ḣ - head (the first word) ċ - count occurrences (of head in the list - either 0 or 1) ‘ - increment Ç - call the last link (4) as a monad - i.e. f(two words) × - multiply ‘ - increment - so we have: 1 for ["1", "blah"], - 2 for ["blah", "blah(s)"] or 3 for ["1", "blah(s)"] ⁶;ḲÇĿ2ƤK - Main link: list of characters, the string ⁶ - literal space character ; - concatenate (place a space at the beginning as we want to inspect pairs) Ḳ - split on spaces (giving an empty list at the start) 2Ƥ - for all infixes of length two: Ŀ - call the link at the given index as a monad: Ç - call the last link (5) as a monad K - join the result with spaces - implicit print [Jelly]: https://github.com/DennisMitchell/jelly [bytes]: https://github.com/DennisMitchell/jelly/wiki/Code-page [TIO-j884vnh0]: https://tio.run/##y0rNyan8///hzlVchydaP2qYW8wFZD/csVjXmCsUyCp/1DBHs1gDKPGocY8hF5B3aCtQ9lHjlkNbS08tSNc6tPvhjk1Huh/uWPSoYcbh6YfbgRTXo8Zt1kDhw@1H9hsdW@L9//9/38Ti5PwSjWJNhcSiVAUjhaTEPCAE8/NSFAwVclILilKTMxJL80BiCnp6egoKSaUlCvl5qQqZxQq5mcVA8cy8dIVEheLEUhAnMT0VpLQoPydHB2xIYp5CYkFRPtiAkvx8RQA "Jelly – Try It Online"