Я пытаюсь создать регулярное выражение, которое найдет любую строку, содержащую ровно одно слово.Слова, разделенные дефисом или символом (например, тестовое слово) или начальным пробелом, по-прежнему должны рассматриваться как одно слово.
$cat file1
this line has many words
hello
test-hi
this does aswell
Использование регулярного выражения
'/^\s*(\w+)\s$/GM'
Возвращает только "привет" и игнорирует "test-hi"
Я могу перехватить все отдельные слова, но не с дефисами и т. Д.