Совпадение строк, исключая буквенные звездочки - PullRequest
0 голосов
/ 01 февраля 2019

У меня есть набор полей в базе данных с идентификаторами, имеющими форму

abc::def::123::xyz

В некоторых записях одна или несколько частей идентификатора заменяются звездочкой, например,

abc::def::123::xyz
abc::def::*::xyz
abc::def::123::*

Я запрашиваю RethinkDB и мне нужно сопоставить идентификаторы, которые НЕ содержат звездочку, но у меня возникли проблемы с его работой.Я пробовал:

^\*
^[\*]

Но ни одна из этих работ.Что мне не хватает?Я делаю это из Python, если это актуально.

1 Ответ

0 голосов
/ 01 февраля 2019

Вот пример, который вы можете попробовать:

^\w{3}(?:::\w{3}){3}$

Для запуска демонстрации перейдите по ссылке ниже:

Демо

Если слагаемые между :: могут иметь любую длину, тогда используйте \w+ для соответствия любому количеству символов, например

^\w+(?:::\w+){3}$
...