1
Я хочу проверить имена загруженных файлов. На данный момент, у меня есть следующее регулярное выражение, которое соответствует только буквенно-цифровые символы, тире и подчеркивающий:Regex для проверки alpha_dash и ровно одного символа точки
/^[\w-]*$/
Однако, я должен также гарантировать, что имя файла содержит ровно один точечный характер. Как мне изменить это регулярное выражение для достижения желаемого результата?
_О ваш regex_, будьте осторожны, это может показаться правильным, но ** [ 'это не совсем то, что вы think'] (HTTP: //stackoverflow.com/documentation/regex/1757/character-classes/9991/character-class-and-common-problems-faced-by-beginner#t=201608061800584842834)** – rock321987
@ rock321987 Я слышал это раньше, но все же не понимают разницы между '[\ w]' и '[a-zA-Z0-9_]'. Документы [Переполнение стека] (http://stackoverflow.com/documentation/regex/1757/character-classes#t=201608062355504305058&a=remarks-common-classes-1) говорят, что они равны, кстати. –
Вы уже редактировали свой вопрос. Регулярное выражение, которое вы использовали, было '^ [\ w - \.] * $' И '-' внутри символьного класса обозначает диапазон, и оно не будет соответствовать' -' буквально – rock321987