У меня есть пример здесь:Регулярного выражения для решения специальных символов
>>> txt1
'fdf\\.\\..dgg'
я намерен найти регулярное выражение, которое будет возвращать мне специальные символы.
Так что я попробовал это.
>>> ans=re.search("\w+[\|.]*\w+",txt1)
>>> ans.group()
'fdf'
\ w + найдет слова, продолжающиеся. [\ |.] Должен был найти \ или. (точка). Предполагалось, что звезда продолжится для следующей записи. Опять же, \ w + должен был найти конечные слова.
Пожалуйста, проверьте, что здесь не так? Или концепция не совсем то, что я думаю ... Заранее благодарим всех .... Как вы можете видеть, идея не работает.
email = "bogusemail123 @ sillymail.com " >>> x = re.search ('\ w + [. | \ w] @ (\ w + [.]) * (com $ | in $)', email) >>> x .group() '[email protected]' Это работает с OR ..... –
Это потому, что у вас нет обратной косой черты в классе символов. '[.| \ w] 'будет соответствовать символу точки, трубы или слова, когда вы имеете в виду просто' [. \ w] '. В вашем исходном посте у вас был '[\ |.]', И обратная косая черта действовала, чтобы вырваться из трубы, так что это то же самое, что и '[|.]'. – Borodin
Ох ....... Я полностью не понял ... Вы правы ... Спасибо, что привлекли к себе серьезную ошибку .... Большое спасибо ... –