Oh, I wrote something a little more complicated. It checks that the hyphen dash is part of a split word, or not, before joining. It also ignores multiple spaces and line breaks.
;
Local $sText="Test text- - ,do-what-ever-you-want ,eat-apple ,write sug-" & @CRLF & "gestion and work hard" & @CRLF & "alot"
Local $aArray = StringRegExp(StringRegExpReplace($sText, "(?i)(?<=[a-z])\-\r\n(?=[a-z])", ""), "\S+", 3)
_ArrayDisplay($aArray)
:;
Or with the item count added.
Local $sText="Test text- - ,do-what-ever-you-want ,eat-apple ,write sug-" & @CRLF & "gestion and work hard" & @CRLF & "alot"
Local $aArray = StringRegExp(StringRegExpReplace("? " & $sText, "(?i)(?<=[a-z])\-\r\n(?=[a-z])", ""), "\S+", 3)
$aArray[0] = UBound($aArray) -1
_ArrayDisplay($aArray)
;
It's the same approach as Melba23, but a little more fussy.