正则表达式实战

Posted liaowenhui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式实战相关的知识,希望对你有一定的参考价值。

(1) 需求:导入时得判断价格是否为非负数,不能为特殊字符(eg:#)。

程序测试:

 技术图片

 实战:

 技术图片

 正则表达式如下:

^[1-9](d*)([.][0-9]*)?$

解析:

^:匹配输入字符串的开始位置

[1-9]:设置第一个数字不是 0范围1到9。

将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,‘n‘ 匹配字符 "n"。‘ ‘ 匹配一个换行符。序列 ‘‘ 匹配 "" 而 "(" 则匹配 "("。

d*:d表示匹配一个数字字符。等价于 [0-9],*表示匹配前面的子表达式零次或多次

[.][0-9]*:小数点后可以加零次或多次 [0-9]。

?:匹配前面的子表达式零次或一次例子中匹配([.][0-9]*)零次或一次,表示可能是小数或整数。

$:匹配输入字符串的结尾位置

(2) 需求:校验导入的sku只能由数字或字母组成,不能为特殊字符(eg:#)。

程序测试:

 技术图片

实战:

技术图片

正则表达式:^[A-Za-z0-9]+$

解析:

^:匹配输入字符串的开始位置。

[A-Za-z0-9]:匹配数字或者大小写字母。

+:表示匹配前面的子表达式一次或多次。

$:匹配输入字符串的结尾位置。

 

以上是关于正则表达式实战的主要内容,如果未能解决你的问题,请参考以下文章

常用正则表达式最强汇总(含Python代码举例讲解+爬虫实战)

正则表达式从基础到深入实战

正则表达式实战

干货 | Logstash自定义正则表达式ETL实战

Golang: 如何使用正则表达式,并实战爬取手机号

正则表达式从入门到实战