Если я не понимаю, вы просто хотите убедиться, что строка содержит как минимум 3 символа слова?\ s * в начале говорит ему искать как можно больше пробелов.Тогда шаблон (\ w [^ \ w] ) будет соответствовать любому символу слова, за которым следует ноль или более несловарных символов.{3} будет утверждать, что есть три символа слова.. в конце будет соответствовать остальной части строки.
Так что, если мое понимание и разбивка верны, то, что вы хотели бы, это, верно?
/(\w\W*){3}/gm
Это будет соответствовать любой строке, содержащей 3 символа слова, независимо от того, что внутрииз них.Это немного отличается от вашего, так как ваш не требует ничего, кроме пробела перед первым словом символа.Я не уверен, что это то, что вы хотели или нет, но если это так, просто дайте мне знать, и я изменю это ...
Редактировать На самом деле, Iнашел этот вопрос , который связан с:
Таким образом, учитывая это, вы могли бы сделать что-то вроде этого:
var desExp = /^\s*([\w\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF][^\w\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]*){3}.*$/gm;
Блок [\w\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]
будет соответствовать любому символу слова (либоUTF8 или Latin-1).