Ниже вы ответите на свой вопрос, но см. мою дополнительную заметку:
^(?!\s*$)[-a-zA-Z0-9_:,.' ']{1,100}$
Объяснение: (?!\s*$)
является отрицательным просмотром . Это означает: «Следующие символы не могут соответствовать подшаблону \s*$
». Когда вы принимаете подшаблон во внимание, это означает: «Следующие символы не могут быть ни пустой строкой, ни строкой пробела до конца, поэтому после этой точки в ней должен быть по крайней мере один символ без пробелов Струна." Если у вас есть это правило, вы можете разрешить пробелы в своем классе символов.
Дополнительная заметка: я не думаю, что ваш ' '
делает то, что вы намереваетесь. Похоже, вы пытались представить пространственный символ, но регулярное выражение интерпретирует '
как буквальный апостроф. Внутри класса символов ' '
будет означать «соответствовать любому символу, который является либо '
, либо пробельным символом, либо '
» (обратите внимание, что второй символ '
является избыточным). Я подозреваю, что вам больше нравится:
^(?!\s*$)[-a-zA-Z0-9_:,.\s]{1,100}$
Из документация, связанная с :
blockquote># Features can be used to reexport features of other packages. The `session` # feature of package `awesome` will ensure that the `session` feature of the # package `cookie` is also enabled. session = ["cookie/session"]
Достаточно ли этого?
no_std
, хотя я чувствую, что я понял, что правильная вещь должна состоять в том, чтобы иметь функцию по умолчанию i>, которая позволяет использовать вещи изstd
, поэтому, возможно, ящик ascii находится только назад. , – Shepmaster 13 October 2016 в 13:22