Как написать регулярное выражение для поиска не пустой строки?
Мне нужно регулярное выражение, которое подходит для не пустой строки, и не состоящей только из пробелов и переносов строки. При этом, если в строке есть любой другой символ, не зависимо от расположение, допускается уже любое количество пробелов, переносов и тд. Я дошел до такого выражения "'.*\S.'" но оно не пропускает строку если в нем есть пробелы. Примеры: текст текст, текст текст, текст, текст , вместо "текст" любой не пробельный символ и не перенос строки В коде он будет в таком виде:
description: {
type: 'string',
title: 'Описание',
pattern: '^(?!\s+$)[\w\W]+',
}
Ответы (1 шт):
Не забывайте, что в строковых литералах в JavaScript символ обратной косой черты используется для определения escape-последовательностей (экранированных) вроде \n (LF), \t (TAB), \r (CR) и так далее.
Вам подойдут
pattern: '.*\\S.*',
pattern: '^(?!\\s+$)[\\w\\W]+',
pattern: '^\\s*\\S[^]*',
Первое выражение находит строки с как минимум одним непробельным символом.
Второе выражение находит целую строку (даже с переводами строки), которая не состоит целиком из пробельных символов.
Последнее выражения находит целую строку (даже с переводами строки), которая содержит мимимум один непробельный символ. По сути, это то же выражение, что и первое, но эффективнее.