当前位置: 首页 > news >正文

顺德网站开发建设工程造价员网站

顺德网站开发,建设工程造价员网站,上海环球金融中心介绍,松岗做网站1.定义正则表达式 正则表达式意在描述隐藏在数据中的某种模式或规则。 例如:下面的几个字符串看似各不相同: slimshady999roger1813Wagner但看似不同的数据却隐藏着相同的特征: 仅由英语字母和数字组成英语字母有小写也有大写总字符数介于 …

1.定义正则表达式

正则表达式意在描述隐藏在数据中的某种模式或规则。

  • 例如:下面的几个字符串看似各不相同:
    • slimshady999
    • roger
    • 1813Wagner
  • 但看似不同的数据却隐藏着相同的特征:
    • 仅由英语字母和数字组成
    • 英语字母有小写也有大写
    • 总字符数介于 5到12之间
  • 这些共同特征可以用正则表达式来描述:
    • ^[a-zA-Z0-9]{5,12}$

正则表达式犹如一门微型语言,通过特定的语法规则,描述字符数据的模式。

利用正则表达式可以很方便地完成以下任务:

  • 数据搜索
    • 在文本集合中搜索符合特定模式规则的子集
  • 数据验证
    • 验证某个文本输入是否符合给定的模式规则
  • 数据变换
    • 将文本集中符合给定模式规则的元素替换掉

Go语言标准库的regexp包对正则表达式提供支持,其中的MatchString函数接受一个正则表达式和一个被搜索字符串,返回值为bool值,用于描述该字符串中是否存在与正则表达式所描述的模式相匹配的部分。

  • match, err := regexp.MatchString(needle, haystack)
// 大海捞针
// regexp包的MatchString函数接受一个正则表达式模式和一个被搜索
// 字符串,返回该字符串中是否存在与正则表达式模式相匹配的部分
package main
import ("fmt""log""regexp"
)
func main() {//needle := "chocolate"needle := "(?i)chocolate"	// (?i)表示忽略大小写haystack := "Chocolate is my favorite!"match, err := regexp.MatchString(needle, haystack)if err != nil {log.Fatal(err)}fmt.Println(match)
}
// 打印输出:
true

 2.正则表达式语法

正则表达式作为一种模式描述语言,有其特定的语法,例如:

语法标记

匹配规则

.

匹配换行符之前的任何字符

*

匹配0到多个任意字符

^

开头

$

结尾

+

匹配1到多次

?

匹配0到1次

[]

匹配字符集内的任意字符

{n}

匹配n次

{n,}

匹配n到多次

{m,n}

匹配m到n次

基于特定匹配语法所构造出的模式描述字符串即正则表达式。

假设在将用户设置的用户名插入数据库之前需要先验证其合法性,规则如下:

  • 用户名的长度至少5个字符但不得超过12个字符
  • 用户名只能由英语字母和阿拉伯数字组成,不能含有其它特殊符号和非英语字符
  • 构成用户名的英语字母可以使用小写也可以使用大写

根据匹配语法得到描述上述规则的正则表达式:^[a-zA-Z0-9]{5,12}$

  • "^"和"$"表示从字符串的第一个字符开始匹配,一直匹配到最后一个字符。
  • "[a-zA-Z0-9]"内的字符集表示与其中任意一个字符匹配,包括大小写英语字母和数字。
  • "{5,12}"内的数值区间表示至少匹配5次,但最多不超过12次。

可以想象不使用正则表达式完成这样的匹配验证并非不可能,但要复杂得多。

 

 

http://www.yayakq.cn/news/83039/

相关文章:

  • 商城网站建设哪家好国内电商平台大全
  • 用ps如何做短视频网站推荐几个没封的网站
  • 苏州高校网站建设建议做网站视频上传到哪儿
  • 做网站的样版是做网站设计好还是杂志美编好
  • 素材库网站亚洲紧急升级访问新域名
  • 网站是由多个网页组成的吗创意网站 模板
  • wordpress纯静态网站网站开发 微盘
  • 济南建设项目竣工验收公示网站微信网站的制作
  • 网站建设公司的市场营销方案模板最便宜云主机永久免费
  • 制作网站的收获体会制作网站公司首 荐乐云seo专家
  • 做本地网站赚钱吗wordpress主题the7.6
  • 网站开发需要什么资料做网站找哪个平台好
  • 扬州开发区建设局网站做网站设计的平台
  • 涿州网站网站建设做网站职校选什么专业
  • 做网站造假域名一定要备案吗
  • 网站建设 免费做网站一定要效果图吗
  • 郴州竞价网站建设方案广西网站建设介绍
  • 手机微信网站做平面那个网站素材好
  • 昆明网站营销app开发公司价格表
  • 如何拿网站后台账号室内设计图片
  • 北湖区网站建设专业网络营销的案例有哪些
  • 一个网站设计的费用免费翻国外墙的浏览器
  • Wordpress源码下载站公司网站制作重庆
  • 南宁网站建设索王道下拉西安网页设计培训学校
  • 聊城做网站的asp在网站制作中的作用
  • 做网站开发教程南阳网站建设xihewh
  • 怎么在自己的网站上做漂浮链接wordpress 简单会员
  • 电子商务网站环境建设青岛建设网站公司
  • 全景网站模版无忧建站网
  • 企业网站手机版源码下载贝锐免费域名