Регулярное выражение превод строки

304
05 ноября 2018, 06:00

Подскажите, подскажите пожалуйста, модифицировать данное регулярное выражение: при нажатии клавиши Enter идёт переход на новую строку, и в вызалит ошибка ссылающаяся на пробелы, даже если увеличить количество разрешённых пробелов, при переходе на новую строку все равно появляется это сообщение об ошибке. использую вот это: ссылка.

Возможно можно дописать в регулярное выражение, количество переходов на новую строку, но я перевернул весь интеренет и не нашёл ответа на этот вопрос. Вероятно я как новичёк, не совсем понимаю как работать с регулярными выражения, надеюсь на вашу помощь!

export const getAboutStockValidation = () => 
  Yup.string() 
  .trim() 
  .matches(/^((?!\s{2}).)*$/, 'Не более одного пробела между словами') 
  .min('10', 'Минимум 10 символов') 
  .max('250', 'Максимум 250 символов');
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.0/react.min.js"></script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.0/react-dom.min.js"></script>

Answer 1

Главная проблема — . не находит знаков перехода на новую строку. Кроме того, используемая конструкция слишком громоздка, достаточно ограничиться одним блоком просмотра вперёд:

/^(?![^]*\s{2})/

^(?![^]*\s{2}) находит начало строки (^), а потом, если находит 0 и более любых символов, за которыми следует 2 любых пробельных символа, возваращает false.

Если необходимо отсеять совпадания с 2+ "вертикальными" пробельными символами, используйте

/^(?![^]*[^\S\r\n]{2})/

[^\S\r\n] находит только "горизонтальные" пробельные символы (за исключением некоторых нетипичных переходов на новую строку, но этого шаблона чаще всего достаточно).

READ ALSO
Как узнать нажата ли клавиша при создании компонента React

Как узнать нажата ли клавиша при создании компонента React

Как узнать нажата ли клавиша при создании компонента React(в ComponentDidMount)Мне необходимо создавать компоненты по нажатию Ctrl+Enter, при этом обработчик...

196
Модальное окно в JS

Модальное окно в JS

На сайте с цветами есть различные картинки: розы, орхидеи, ромашки и тд

242
Раздвижные кубы в BIRT eclipse

Раздвижные кубы в BIRT eclipse

возник вопрос при работе с birtЕсть ли возможность создать раздвижные кубы в отчетах? Т

158