java这个正则表达式会匹配“i.imgur.com/xxx”吗?
这个正则表达式是否匹配http://i.imgur.com/xxx
"http://i.imgur.com/[a-zA-Z0-9]*"
我真的不使用正则表达式,我只学过一次。我在谷歌上搜索了如何为imgur做这件事,每个人都有很长的,这还不够好吗?这似乎是工作,但它会错过什么,如何改善
我想找到所有的I.imgur。com/xxx以下载imgur。jpg。基本上,它必须看起来像“http://i.imgur.com/”,其余的将是“afsidjf123”“Bdfsi13”“123aslefBA”
# 1 楼答案
首先,您需要转义
.
,因为它是正则表达式中的一个特殊字符(表示任何字符)。这个正则表达式将匹配http://i\.imgur\.com/
,后跟任何字母或数字,如果这是您想要的:# 2 楼答案
总之,是的
根据你使用的语言,这是一种方法
或者,您可以使用类似
\w
这样更简单的方法,它匹配所有单词字符:也很重要:
.
是正则表达式中用于匹配“任意一个字符”的特殊字符;你可能会用这种方式得到一些误报。您需要使用反斜杠\
来转义文字句点在这里看到它的作用:http://regex101.com/r/tP0iU7
(注意反斜杠转义
/
,这是PHP的一个要求,在上面的表达式中,\
必须由另一个\
转义)需要注意的事项:
image.jpg
中的.
不匹配;如果你也想捕捉它,你需要使用像[\w.]
这样的字符类,而不仅仅是\w
李>http://
,您将永远无法匹配https://
上托管的任何内容。您可以通过添加一个“非贪婪的”s?
来实现这两种匹配,如下所示:https?://