我想检查一个字符串,以确保它以http://开头,并在example.com网站上。我有这个:
"^http://\\Bw{3}?\\.example\\.com/*"
为什么不匹配?
答案 0 :(得分:3)
试试这个:
^https?://(?:www\.)?example\.com/?.*
在Java中将其用作字符串时,请确保转义反斜杠:
"^https?://(?:www\\.)?example\\.com/?.*
答案 1 :(得分:0)
正则表达式就是地址......
“http://www.example.com”将与之匹配。
如果您希望匹配其他example.com字符串,例如
“http://test.example.com”RegEx就是这样的
的http:// \ W + .example.com的
也许我不明白这个问题,但这就是你所问的问题的答案。
答案 2 :(得分:0)
你的\ B导致问题。你正在搜索两个字符之间的字符,然后是三个字符
事实上,任何东西都不可能匹配这个正则表达式:/\Bw
因为你正在搜索一个空字符串,它在两个非单词字符之间或两个单词字符之间,但是你已经指定了它位于左侧的非单词字符(/
)和右侧的单词字符(w
)之间。
您还可以在末尾搜索0或更多正斜杠,而不是正斜杠,后跟0或更多通配符。
尝试:^http://(?:www\\.)?example\\.com(?:/.*)?
答案 3 :(得分:0)
^http:\/\/(?:www\.)?example\.com(?:\/.*)?$