匹配不包括文字星号的字符串
Match strings excluding literal asterisks
我在数据库中有一堆字段,其 ID 的形式为
abc::def::123::xyz
在某些记录中,id 的一个或多个部分被星号代替,例如
abc::def::123::xyz
abc::def::*::xyz
abc::def::123::*
我正在查询 RethinkDB 并需要匹配不包含星号的 ID,但我无法使其正常工作。我试过:
^\*
^[\*]
但是这些都不起作用。我错过了什么?如果相关的话,我是从 Python 开始的。
您可以尝试以下模式:
^\w{3}(?:::\w{3}){3}$
按照下面的 link 进行 运行 演示:
如果 ::
之间的词可以有任意长度,则使用 \w+
匹配任意数量的字符,例如
^\w+(?:::\w+){3}$
我在数据库中有一堆字段,其 ID 的形式为
abc::def::123::xyz
在某些记录中,id 的一个或多个部分被星号代替,例如
abc::def::123::xyz
abc::def::*::xyz
abc::def::123::*
我正在查询 RethinkDB 并需要匹配不包含星号的 ID,但我无法使其正常工作。我试过:
^\*
^[\*]
但是这些都不起作用。我错过了什么?如果相关的话,我是从 Python 开始的。
您可以尝试以下模式:
^\w{3}(?:::\w{3}){3}$
按照下面的 link 进行 运行 演示:
如果 ::
之间的词可以有任意长度,则使用 \w+
匹配任意数量的字符,例如
^\w+(?:::\w+){3}$