# [Jelly], 52 [bytes] <sup>Jelly has not got one regex(s) atom</sup> Ṫ Ñ;”s Ṫḣ-3 UṪw“)s(”⁼1 e€“µḣ⁴µ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? e€“µḣ⁴µuʠg*»Ḳ¤Ḣ‘×Ç‘µĿ - Link 5, categorise and transform: two words (list of lists) ¤ - nilad followed by link(s) as a nilad: “µḣ⁴µuʠg*» - compression of string "a 1" + word " an" + word " one" Ḳ - split on spaces = ["a", "1", "an", "one"] e€ - exists in (that) for €ach (word in the two words) 1 if so, else 0 Ḣ - head (the result for the first of the two words) ‘ - 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)"] µ - monadic chain separation Ŀ - call the link at that index as a monad - i.e. f(two words) ⁶;ḲÇ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 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/1DBHs1gDKPGocY8hV@qjpjVAkUNbgSoeNW45tLX01IJ0rUO7H@7YdGjJwx2LHjXMODz9cDuQOrT1yH6uR43brIFSh9uNji3x/v//v29icXJ@iUaxpkJiUaqCkUJSYh4Qgvl5KQqGCjmpBUWpyRmJpXkgMQU9PT0FhaTSEoX8vFSFzGKF3MxioHhmXrpCokJxYimIk5ieClJalJ@TowM2JDFPIbGgKB9sQEl@viIA "Jelly – Try It Online"