正则表达式([^\[\<]+?])和([^\["\']+?)是什么意思啊?

请教一个问题
'/\[font=([^\[\<]+?)\]/i' 是什么意思啊,()中的内容不懂。
'/\[url=www.([^\["\']+?)\](.+?)\[\/url\]/is' 是什么意思啊,第一个()中的内容不懂。
谢谢了!

两个正则表达式的意思解释如下:

()中是匹配内容。

1.([^\[\<]+?) 不能有<;

2.([^\["\']+?) 不能有单引双引号。

(+是允许多字符,?问号是有或没有)

扩展资料

正则表达式的特点是:

1. 灵活性、逻辑性和功能性非常强;

2. 可以迅速地用极简单的方式达到字符串的复杂控制。

3. 对于刚接触的人来说,比较晦涩难懂。

由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到著名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。

参考资料:百度百科:正则表达式

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2019-08-06

/\{\{(.+?)\}\}/g

最前面的“/”与最后面的“/”是分隔符,表示正则表达式的开始与结束。

最后的“g”标志则表示正则表达式使用的global(全局)的状态。使用 global 标志表明在被查找的字符串中搜索操作将查找所有符合的项,而不仅仅是第一个。这也被称为全局匹配。【相关的标志还有i(ignoreCase,表示忽略大小写)、m(multiline,表示允许跨行)】

然后我们再来看中间的主体部分:\{\{(.+?)\}\}花括号{}是正则里的限定符。但是我们这里是要找字符串里的花括号,所以前面加个“\”来表示是要找字符的花括号。“\{\{”“\}\}”就是找前后两组花括号。

“.”表示任意字符。“+”表示前面表达式一次乃至多次。“?”表示匹配模式是非贪婪的。

/\{\{(.+?)\}\}/g完整的意思就是:在全部范围内查找匹配前后有两组花括号的字符串。

例如:“{{}}”、“{{asdfasdfasdf56745}}”、“{{yuyuy#&#36;%8787 9+_)(*)87 }}”

拓展资料:

正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。

许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。

参考资料:正则表达式-百度百科

本回答被网友采纳
第2个回答  推荐于2017-09-25
()中是匹配内容
([^\[\<]+?) 不能有<
([^\["\']+?) 不能有单引双引号

+是允许多字符,?问号是有或没有追问

第一个懂了,是不能有 [ 并且不能有< 吧!
第二个还是不太懂,如果是不能有单双引号,应该是\"\',可为什么双引号前没有 \ 呢?

追答

你加上应该也是不影响的,\是转义符,意思是防止歧义的保留的字符用的

本回答被提问者采纳
第3个回答  2019-03-21

([^\[\<]+?)这个分三部分来看[^\[\<]、+、?

第一部分、[^\[\<] 不能含有[ <二种符号。

第二部分、+ 匹配一次。

第三部分、匹配前面的子表达式零次或一次,但当该字符紧跟在任何一个其他限制符 (*, +, ?, {n}, {n,}, {n,m}) 后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串。

综上可以解读为:匹配不为 [ 及 < 的单个字符。例如:abcd[<ef则会匹配出a、b、c、d、e、f。

按照上面分析的思路,([^\["\']+?)可以解读为匹配不为 [ " ' 这三种符号的单个字符。

第4个回答  2019-05-30
第一个,1个以上的不包含[符号,不包含<符号的任意字符,直到出现“]"号标记部分(不含"]"符号),加了?号表示非贪婪,第一次有]号就停,第二个的第一个()里表示不包含[号,"号,`号的1个或多个字符,后面有加?号,也是非贪婪模式,碰到]就停。