1

我有一个可以以任一结尾的字符串

"/"

或者

"/?secure=true"

我需要验证它。我试过这个

\b(/(/?secure=true)?)\b

但我没有找到与正则表达式匹配的匹配项。然而,随着

^(/(\$secure=true)?)$

找到匹配。但这在我的情况下无济于事,因为我要验证的字符串将以诸如"thisismystring/"or之类的字符作为前缀"thisismystring/?secure=true"

我想知道该怎么做。

4

3 回答 3

6

您需要使用管道符号 (|) 来指定或:

(/|/\?secure=true)$

您还需要像这里一样转义问号,并且应该指定字符串结尾的“$”而不是字符串开头的“^”。

于 2012-05-28T08:58:26.740 回答
4

两种情况都将包含

/

所以这不应该在可选部分。

你把可选部分放在()?

并用反斜杠转义问号

/(\?secure=true)?

为了表明它应该以此结尾,你把 $ 放在最后

/(\?secure=true)?$
于 2012-05-28T09:00:11.917 回答
1

可以这样做:

/(\?secure=true)?$
于 2012-05-28T09:00:35.430 回答