Как заставить солончак извлекать состояния из нескольких веток в gitfs

Вы хотите что-то вроде этого: ( видеть его в действии на rubular.com ):

^\s*\S+\s*$

Объяснение:

  • ^ является началом привязки строки
  • $ является концом привязки строки
  • \s является символьным классом для пробелов
  • \S является отрицанием \s (обратите внимание на разницу в верхнем и нижнем регистре)
  • * является повторением «нуль или больше»
  • + является «одним

Ссылки


Может ли «текст» быть пустым?

Вышеупомянутый шаблон NOT , например, пустая строка. Исходная спецификация не очень ясна, если это предполагаемое поведение, но если пустым «текстом» разрешено, просто используйте вместо него \S*, т. Е. Сопоставьте ноль -или-больше (вместо one -or-more) повторение \S.

Таким образом, этот шаблон (такой же, как выше, кроме * используется вместо +)

^\s*\S*\s*$

будет соответствовать:

  • Пустая строка (т. е. строка, длина которой равна 0)
  • Непустые строки, состоящие только из пропущенных символов

Что считается «текстовыми» символами?

Вышеупомянутые шаблоны используют \S для определения символов «текст», т.е. ничего, кроме пробелов. Это включает в себя такие вещи, как пунктуации и символы, т. Е. Строка " #@^$^* " соответствует обоим шаблонам. Неясно, является ли это желаемым поведением, т. Е. Возможно, что " ==== AWESOMENESS ==== " является желаемым совпадением

. Шаблон все еще работает даже для этого случая, нам просто нужно быть более конкретным с нашими определениями класса символов.

Например, этот шаблон:

/^[^a-z]*[a-z]*[^a-z]*$/i

Будет соответствовать (, как показано на rubular.com ):

 ==== AWESOMENESS ====

Но не:

 ==== NOT AWESOME ==== 

Обратите внимание, что метасимвол ^, используемый в качестве символа первого в определении класса символов, больше не означает начало строкового якоря , а скорее отрицание определения класса символов.

Обратите также внимание на использование модификатора /i в шаблоне: это позволяет не учитывать регистр символов. Фактический синтаксис может варьироваться между языками / ароматами.

Ссылки

1
задан wl2776 1 March 2019 в 14:20
поделиться

0 ответов

Другие вопросы по тегам:

Похожие вопросы: