zoukankan      html  css  js  c++  java
  • 正则表达式

    正则表达式:搜索或检索一个字符串里面的数据


    1.内容表示:
    (1)[]
    [1234]表示一个不连续数1或2或3或4,通俗的讲就是一个中括号代表提取一个数据,[1234]只能在1,2,3,4中选一个
    [0-9]表示一个连续数0或1或2或3或4或5或6或7或8或9,通俗的讲就是一个中括号代表提取一个数据,[0-9]可以在0,1,2,3,4,5,6,7,8,9选一个
    举例:abcd123abc1234
    a.提取数据:[123]
    结果:1 2 3 1 2 3 一共6个结果
    b.提取数据:[0-9]
    结果:1 2 3 1 2 3 4 一共7个结果
    c.提取数据:[abc][0-9][0-9][0-9]
    结果:d123 c123 一共2个结果
    d.提取数据:[abc][0-9][12][123][4]
    结果:c1234 一共1个结果
    (2).
    英文句号点(.)表示任意字符
    举例:abcd123abc1234
    a.提取数据:[123].[3][abcd]b
    结果:123ab 一共1个结果


    2.数量的表示:
    (1){}
    花括号里面的数字表示数量
    举例:abcd123abc1234
    a.提取数据:[123]{2}
    结果:12 12 一共2个结果
    b.提取数据:[123]{2}[abc]{2}c
    结果:23abc 一共1个结果
    c.提取数据:[123].{3}[bc]1
    结果:23abc1 一共1个结果
    (2)+
    加号表示一个或者多个
    举例:abcd123abc1234
    a.提取数据:[ab][abcd].+[12]+
    结果:abcd123abc12 一共1个结果
    b.提取数据:[123]+[abc]
    结果:123a 一共1个结果
    (3)*
    星号表示0个1个或多个
    举例:abcd123abc1234
    a.提取数据:[123]*[abc]
    结果:a b c 123a b c 一共6个结果
    (4)无
    无具体表示的数量形式数量默认为1


    3.贪婪匹配:
    举例:abcd123abc1234
    a.提取数据:[abcd]{2}.*?c
    b.提取数据:[abcd]{2}.*c
    a提取结果:abc abc 一共2个结果
    b提取结果:abcd123abc 一共1个结果

    可以明显看到加了贪婪匹配的和没有加的出现了不同,问题就出在*在表示0个1个或多个的时候遵循的原则是就长不就短,
    所以当有几个结果的时候它选择了最长的,贪婪匹配会改变它的规则直接选择最短的结果。

  • 相关阅读:
    【每天都要看一下】
    【这里有别人的经验,也有好玩的发现】
    【WPF】Listbox模板内button点击选中当前listboxItem
    【WFP】弹出窗口不在win10 任务列表里显示的方法
    PSD路径转换为 WPF path 的data
    【WPF】Listbox内item的样式替换默认选中样式和鼠标滑过样式
    【WPF】ListBox1内嵌套ListBox2 2的滑轮滚动阻止1的滚动解决方法
    【C#】文本框拼音检索汉字
    【WPF】Datagrid显示最低下一跳
    【C#】绝对随机数
  • 原文地址:https://www.cnblogs.com/1527275083gj/p/15024562.html
Copyright © 2011-2022 走看看