一、贪婪和非贪婪
比如<1><2><3><4><5><6>要选择<>里面的数字会怎么写?r“<.*>“,是这样吗?我们来看一下。
贪婪模式为什么会出现全部选择现象?这是因为正则会更多的匹配更多的内容,使得全部的表达式全部选中。如何单个选择呢?使用r”<.*?>“取消贪婪模式。
非贪婪模式二、转义
元字符转义?何为转义,比如 . 点代表任意一位字符 ,而字符串恰巧又有.点做分割怎么办?举例来说:“香蕉.234324,苹果.3r43jkl,橘子.ioifaof”如何获取前面的水果呢?r”.*.“ 这种写法吗?
未加转义字符为什么会出现全部选择?这里的"."是以元字符的形式出现,而不是字符串里的. 分割,所以要加上转义 ‘\.’使他不在以转义字符的方式存在。
加转义过后三、某种字符类型的匹配
[\d]表示匹配某一位数字
【\d】[\w]表示任何一个文字字符
[\W][\s]表示任何一个空格字符(\t \n space)
[\s]四、方括号[ ]
[ ]表示匹配几个字符之一,例如 [a,b,c]指a,b,c 任何一个字符[j-z]是指j以后的任何一个字母。
方括号字符特别注意 [ ]里面的点并不代表任何一个字符,就仅仅表示点。
失去元字符原有意义五、符号 ^ 表示开头和非
符号^ 表示匹配的开头的意思,在[^ ]表示非有子集。
匹配所有非数值这是把非数值的字符匹配出来。
开头匹配开头匹配文字位数为两个的匹配方式。
六、$ 表示结尾匹配
非数字结尾匹配七、组选择 ()
有时候我们要选择的文字字符串是不包括分割符,比如不选择“,”或者“.”,这就需要我们把要选择的部分单独拿出来。
我们选择前面的水果(非贪婪模式)
包含分割的点我们可以加入()使得要选的东西单独拿出来。(.*?)才是我们所需要的东西。
水果分组
网友评论