java正则疑问求解惑
1.^[a-z0-9_-]{3,15}$
在网上看到说^是行开始,$是行结尾。请问^和$在这里都有什么作用了?不写的话貌似也没问题啊。
2. (?=.*[a-z])
必须包含一个小写字符。---怎么会有这种写法了。怎么看出这个正则所要表达的意思了?
3.(?i)<a([^>]+)>(.+?)</a>
资料上说(?i)表示所有的检查区分大小写。但我也看过说(?i)是不区分大小写的,到底哪个正确了?
4.<.+?>
匹配html标签。+后面跟个?是什么意思了?
5. (.+?)
匹配所有.这里匹配所有是什么意思了?java正则里还有那些代表特种意思的东西了?
6. confirm\\((['\"])([^'\"]+)\\1\\)
([^'\"]+)是什么意思?为什么要分为两个组了?\\1反向引用。看不懂,什么事反向引用,有什么用了?类似\\1这样的还有些什么了?
本人刚学java正则,基础的懂了一点,可看别人的正则表达式就是看不懂,求高手帮忙指教,谢谢了。