要创建正则表达式模式

时间:2019-06-08 09:13:35

标签: regex

我想创建一个可以匹配以下模式的正则表达式模式:

1)cellForRowAt

2)tail-test-str1

3)tail-test1-test2-str2

在字符串的前2个内容中,我尝试过tail-test-test3-str1进行验证,之后,对于剩余的字符串如何创建正则表达式模式,我一无所知。

3 个答案:

答案 0 :(得分:2)

如果这3个字符串是唯一完全匹配的字符串,则此模式可能是我们可以在此处执行的最佳操作:

^tail-(?:test(?:-test3)?-str1|test1-test2-str2)$

Demo

答案 1 :(得分:1)

您可以尝试此模式tail-(?:test\d?-)*str\d?

说明:

tail--从字面上匹配tail-

(?:...)-非捕获组

test-从字面上匹配test

\d?-匹配数字零或一次

--逐字匹配连字符

*-匹配之前的模式零次或多次

str-从字面上匹配str

Demo

答案 2 :(得分:1)

更通用的方式可能是:

^tail(?-\w+)+$

Demo