正则表达式(学习)

在学习Python scala 等过程中我发现都涉及到了正则表达式 然后主要根据菜鸟教程https://www.runoob.com/regexp/regexp-syntax.html进行了学习

这三个比较简单 用的也比较频繁

  • runoo+b,可以匹配 runoob、runooob、runoooooob 等,+ 号代表前面的字符必须至少出现一次(1次或多次)。

  • runoo*b,可以匹配 runob、runoob、runoooooob 等,* 号代表字符可以不出现,也可以出现一次或者多次(0次、或1次、或多次)。

  • colou?r 可以匹配 color 或者 colour,? 问号代表前面的字符最多只可以出现一次(0次、或1次)。

 这个例子arr[1] arr[2] arr[3] arr[4] 都是小括号表示的内容

 str.match(patt1) 返回一个数组,实例中的数组包含 5 个元素,索引 0 对应的是整个字符串,索引 1 对应第一个匹配符(括号内),以此类推。

第一个括号子表达式:捕获 Web 地址的协议部分。该子表达式匹配  在冒号和两个正斜杠前面的任何单词。

第二个括号子表达式:捕获地址的域地址部分。子表达式匹配  非 : 和 / 之后的一个或多个字符

第三个括号子表达式:捕获端口号(如果指定了的话)。该子表达式匹配  冒号后面的零个或多个数字。只能重复一次该子表达式。

第四个括号子表达式:捕获 Web 地址指定的路径和 / 或页信息。该子表达式能匹配  不包括 # 或空格字符的任何字符序列。

原文地址:https://www.cnblogs.com/zzstdruan1707-4/p/12292423.html