Detección secuencia de símbolos de puntuación

СИ сабли Quisiera existe alguna форма de utilizar una expresión регулярный en Python 3 para detectar una secuencia de 5 símbolos de puntuación que pueden contener o'!' o'.' (!!!!!/..... o cualquier combinación de éstos..!!!/.!.!. / и т.д.)

0
задан 14.11.2019, 14:40
1 ответ

Если знаки puntuaciГіn - единственная точка или admiraciГіn, она expresiГіn регулировать serГ - в:

r"[\.!]{5}"

Квадратные скобки показывают набор, которого выбирания элемента. В этом случае элементы - точка (у которая должна помещать себе с одним \ впереди, итак, точку, есть специальное значение в regex) или она admiraciГіn. Вне квадратных скобок появляется {5}, которые значат, что предыдущий элемент должен появляться 5 раз. Но предыдущий элемент - набор, которого возможно выбирать различный элемент каждый раз. AsГ - что это покрывает твою необходимость.

Замечает r"" - способ создавать в python цепи "raw", что смогли содержать carГЎcter \ без того, чтобы python он отнесся к этому как к специальной форме.

Nota2 Esta expresiГіn регулярный encajarГ - в tambiГ©n, если есть mГЎs 5 непрерывных знаков, как в"!!!... ". Если ты хочешь предотвратить случай asГ, - оставь комментарий.

Пример cГіdigo завершил Вышедшие

import re

casos = [ "Este no!!", "Este si!!!!!", "Vale!.!.!", "Debería pasar este?!!!...", "Este ....! si"]

r = r"[\.!]{5}"

for caso in casos:
  if re.findall(r, caso):
    print("OK--->", caso)
  else:
    print("no--->", caso)

:

no---> Este no!!
OK---> Este si!!!!!
OK---> Vale!.!.!
OK---> Debería pasar este?!!!...
OK---> Este ....! si
1
ответ дан 01.12.2019, 12:13
  • 1
    Большое спасибо из-за твоего ответа, оно функционировало. В моем случае не importarí у которого я обнаружил má s, так как в тексте, к которому я отношусь только, имеется возможность находить 5 непрерывных знаков. – Pablo Xavier 09.11.2019, 01:48
  • 2
    Если тебя решила проблема, ты ему можешь быть благодарен за это принимая ответ (нажимая зеленый tick) – Adrián Sanz Wallace 09.11.2019, 07:58