当前位置 主页 > 网站技术 > 代码类 >

    正则表达式匹配各种特殊字符(3)

    栏目:代码类 时间:2019-10-09 18:02

    30 首尾空白字符的正则表达式:^\s*|\s*$或(^\s*)|(\s*$) (可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式)

    31 腾讯QQ号:[1-9][0-9]{4,} (腾讯QQ号从10000开始)

    32 中国邮政编码:[1-9]\d{5}(?!\d) (中国邮政编码为6位数字) 33 IP地址:\d+\.\d+\.\d+\.\d+ (提取IP地址时有用) 34 IP地址:((?:(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d))

    正则表达式可以为空值,不为空则要格式。

    格式如下:

    ^$|^(\d+|\-){7,}$ ("|"后边的是要符合格式。)

    如果可以为空的空可以是空格和制表符那就这么写:^\s*$|^(\d+|\-){7,}$

    正则表达式不为空用\S匹配,不能有空格可以用[^ ]匹配,[]中^后面是一个空格。

    [size=12px]1。^d+$  //匹配非负整数(正整数 + 0)

    2。^[0-9]*[1-9][0-9]*$  //匹配正整数

    3。^((-d+)|(0+))$  //匹配非正整数(负整数 + 0)

    4。^-[0-9]*[1-9][0-9]*$  //匹配负整数

    5。^-?d+$    //匹配整数

    6。^d+(.d+)?$  //匹配非负浮点数(正浮点数 + 0)

    7。^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$  //匹配正浮点数

    8。^((-d+(.d+)?)|(0+(.0+)?))$  //匹配非正浮点数(负浮点数 + 0)

    9。^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$  //匹配负浮点数

    10。^(-?d+)(.d+)?$  //匹配浮点数

    11。^[A-Za-z]+$  //匹配由26个英文字母组成的字符串

    12。^[A-Z]+$  //匹配由26个英文字母的大写组成的字符串

    13。^[a-z]+$  //匹配由26个英文字母的小写组成的字符串

    14。^[A-Za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串

    15。^w+$  //匹配由数字、26个英文字母或者下划线组成的字符串

    16。^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$    //匹配email地址

    17。^[a-zA-z]+://匹配(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$  //匹配url 

     18。匹配中文字符的正则表达式: [u4e00-u9fa5]

     19。匹配双字节字符(包括汉字在内):[^x00-xff]

     20。应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

    String.prototype.len=function(){return this.replace([^x00-xff]/g,"aa").length;}

     21。匹配空行的正则表达式:n[s| ]*r

     22。匹配HTML标记的正则表达式:/<(.*)>.*</1>|<(.*) />/ 

     23。匹配首尾空格的正则表达式:(^s*)|(s*$)

     * 正则表达式用例

      * 1、^S+[a-z A-Z]$ 不能为空 不能有空格  只能是英文字母

      * 2、S{6,}         不能为空 六位以上

      * 3、^d+$          不能有空格 不能非数字

      * 4、(.*)(.jpg|.bmp)$ 只能是jpg和bmp格式

      * 5、^d{4}-d{1,2}-d{1,2}$ 只能是2004-10-22格式

      * 6、^0$            至少选一项