如何用正则表达式匹配指定字符开始和指定字符结束
a.*?b就是a开始b结束的匹配如果要易做图是一行的开头和末尾的话
就是
^a.*?b$
非贪婪匹配:如何使用正则表达式碰到到第一个匹配到的字符串就停止
? 当该字符紧跟在任何一个其他易做图符(*,+,?,{n},{n,},{n,m})后面时,匹配模式是非贪婪的。
非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。
例如,对于字符串“oooo”,“o+”将尽可能多的匹配“o”,得到结果[“oooo”],而“o+?”将尽可能少的匹配“o”,得到结果 [‘o’, ‘o’, ‘o’, ‘o’]
例如:”{{[\s\S]*?}}”匹配第一个”{{…..}}”内容且里面不包括两个 “}}”
正则表达式 第一次碰到某个特定字符就返回
比如,现在有字符串https://www.yizuotu.net/make/1/我希望从中抽取出www.yizuotu.net
(http|https)://(\S+?)/
关键在于这个"?"
我们为了遇到一个"/“就返回,而不是最后一个”/“才返回,只需要在后加个”?"