我有一个像./this-needs-to-be-matched/knownstring/endofstring
这样的字符串。
我总是知道 endofstring 是11个字符长
我已经用过这个,直到我意识到 - 符号不匹配
\w+\/knownstring\/\w{11}
现在我真的不知道如何匹配任何字符,包括减号。
结果应为:结果应为:this-needs-to-be-matched/knownstring/endofstring
我也尝试过:
\.\/.*\/knownstring\/\w{11}
还有其他不同的变化,所以我卡住了。
答案 0 :(得分:1)
将-
添加到允许的字符列表中:
^\.\/[\w-]+\/knownstring\/\w{11}$
或只是“不是斜线”:
^\.\/[^\/]+\/knownstring\/\w{11}$
答案 1 :(得分:0)
我认为\.\/.*\/knownstring\/\w{11}
实际应该有效,这究竟是什么问题?
如果endofstring
需要匹配11个字符而不是更多,则可以添加单词边界符号\b
。
\.\/.*\/knownstring\/\w{11}\b
您可以测试此here。