正则表达式

使用ivx实现字符串格式化的经验总结

生来就可爱ヽ(ⅴ<●) 提交于 2020-03-17 01:04:19
在案例是用中经常是用到文本组件展示一些信息,而有时这些信息有需要一些格式化的处理,比如展示手机号的时候我们可能希望如demo中这样只展示开头和尾号,而将中间四位隐藏起来,今天就说一下怎么对字符串进行这类格式化的处理。 1.数据绑定 首先demo中是建立了一个一维数组存放了几个手机号,然后以此一位数组为数据来源进行循环创建,for容器下的文本组件进行了数据绑定,并且在当前数据1后面加入了一些函数方法。这里使用的都是JavaScript的函数方法和语法。(要使用JS方法需要用数据绑定的模式) 2.正则表达式 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式本身功能是十分强大的,但是要想特别熟练使用也需要很多练习。有一句话是说,当你要用正则表达式解决一个问题的时候,那你现在就拥有两个问题了。这里只简单介绍一下demo中的代码含义,对此感兴趣朋友可以自己去详细学习一下正则表达式。 当前数据1是一个字符串对象,这里是用了replace()方法,可以理解为括号中“,”后面双引号中的内容来替代两个“/”之间的内容,g表示执行全局匹配,即查找所有匹配而非在找到第一个匹配后停止。“/”之间的内容可以分为三部分,^(\d{3}),\d{4},(\d{4})$。“^

php小经验:解析preg_match与preg_match_all 函数

别说谁变了你拦得住时间么 提交于 2020-03-16 03:07:21
php小经验:解析preg_match与preg_match_all 函数 本篇文章是对php中的preg_match函数与preg_match_all函数进行了详细的分析介绍,需要的朋友参考下 正则表达式在 PHP 中的应用 在 PHP 应用中,正则表达式主要用于: •正则匹配:根据正则表达式匹配相应的内容 •正则替换:根据正则表达式匹配内容并替换 •正则分割:根据正则表达式分割字符串 在 PHP 中有两类正则表达式函数,一类是 Perl 兼容正则表达式函数,一类是 POSIX 扩展正则表达式函数。二者差别不大,而且推荐使用Perl 兼容正则表达式函数,因此下文都是以 Perl 兼容正则表达式函数为例子说明。 定界符 Perl 兼容模式的正则表达式函数,其正则表达式需要写在定界符中。任何不是字母、数字或反斜线()的字符都可以作为定界符,通常我们使用 / 作为定界符。具体使用见下面的例子。 提示 尽管正则表达式功能非常强大,但如果用普通字符串处理函数能完成的,就尽量不要用正则表达式函数,因为正则表达式效率会低得多。关于普通字符串处理函数。 preg_match() preg_match() 函数用于进行正则表达式匹配,成功返回 1 ,否则返回 0 。 语法: int preg_match( string pattern, string subject [, array

PHP正则表达式

 ̄綄美尐妖づ 提交于 2020-03-16 02:02:55
1. 什么是正则表达式 正则表达式就是一种描述字符串结构的语法规则 2. 为什么需要正则表达式? 因为需要对用户提交的信息进行验证,如果不验证的话,有可能用户提交的就是垃圾信息 3. PHP 里面的正则表达式函数库 在 PHP 里面支持 2 套正则表达式函数库,一套是 POSIX ,另外一套是 PCRE 。比起 POSIX ,现在更多的是使用 PCRE 这一套正则表达式函数。原因有两个: PCRE 函数库的兼容性更好,并且效率高。 我们的正则表达式如果不配合正则表达式函数的话,它就只是一个普通的字符串。所以正则表达式一定要配合正则表达式函数来使用 4. 正则表达式语法 任何一个正则表达式的组成无外乎由 4 个部分组成 ① 定界符 ② 原子 ③ 元字符 ④ 模式修正符 ① 定界符 我们所写的正则表达式都需要放在定界符里面。一般常见的定界符为两个斜杠 // ① 原子 原子是正则表达式里面最基本的组成单位。换句话说,一个正则表达式里面,可以没有元字符,可以没有模式修饰符,但是不能没有原子。 原子大致可以分为 5 大类 1) 普通字符作为原子 所谓普通字符,就是大小写字母,数字等字符 例如: “/5/” 用于匹配字符串中是否有 5 这个字符出现 “/php/” 用于匹配字符串中是否有 php 这个字符串出现 1) 特殊字符作为原子 在正则表达式里面,有一些字符是有特殊含义,例如 * + ?

Java—正则表达式(Pattern类和Matcher类)

隐身守侯 提交于 2020-03-15 23:24:07
正则表达式介绍   正则表达式可以用于对字符串的处理,相当于是一个匹配字符串的模板。主要包含查找、替换、分割、提取等操作;Java中通过 Pattern 和 Matcher 类提供对正则的支持。 字符处理 特殊字符处理 对于特殊字符: $ 、 ^ 、 ( 、 ) 、 [ 、 ] 、 { 、 } 、 * 、 + 、 ? 、 . 、 \ 、 | 前面都要加上 \ 进行转义。 预定义字符 预定义字符即为正则表达式中的“通配符”,就是可以匹配多个字符的特殊字符。 |预定义字符|作用| |-|-| |.|匹配任意字符| |\d|digit,代表数字,匹配0-9中的所有数字| |\D|匹配非数字| |\s|space,代表空白,匹配所有空白字符(空格、换行、回车、换页、制表符等)| |\S|匹配所有非空白字符| |\w|word,代表单词,匹配所有单词字符,包含0-9所有数字、26个英文字母以及下划线"_"| |\W|匹配所有非单词字符| 三种模式的数量表示符 贪婪模式:Greedy,数量表示符默认为贪婪模式,会一直匹配下去,直到无法匹配为止。 勉强模式:Reluctant,用问号 ? 后缀表示,只会匹配最少的字符,也被称为最小匹配模式。 占有模式: Possessive, 用加号 + 后缀表示。 贪婪模式 勉强模式 占用模式 作用 X? X?? X?? X表达式出现0次或1次 X* X*?

jmeter 正则表达式学习(一)--使用详解

余生长醉 提交于 2020-03-15 19:07:17
jmeter自带后置处理器:正则表达式提取器,可以用来提取接口响应里的信息,给予后续接口传参用。 例如要提取响应结果里的token字段及sex字段(响应内容为: "token":"83EEAA887F1D2F1AA1CDA9E197810992","sex":0,"userName":"12548650"),提取器如下设置, 正则表达式提取器说明: Apply to: 应用范围(一般就选择默认的Main sample only),就算有重定向,一般也是提取最终那个请求的接口。 要检查的响应字段: 样本数据源。 主体: 接口响应主体内容,一般要提取普通http响应结果的数据,都勾选这个。 信息头:响应头的所有内容。 Request Headers:请求头的所有内容。   url:是对sample的url进行匹配,也就是查看结果树里请求内容的第一行url,不包含data里的请求参数(即只能匹配 protocol(协议)+host+path+querystring ,如:https://www.baidu.com/index.php?tn=monline_3_dg)。   响应代码:http响应代码,如101,200,302,404,501等。   响应信息:http响应代码对应的响应信息,例如:OK, Found(HTTP/1.1 200 Ok;HTTP/1.1 302 Found)。

正则表达式和基础shell脚本

半城伤御伤魂 提交于 2020-03-15 17:46:45
1、/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户显示出来 getent passwd | grep -v "/sbin/nologin$" | cut -d: -f1 | nl | sort -nr 2、查出UID最大值的用户名、UID和shell类型 getent passwd | cut -d: -f1,3,7 | sort -t: -k2 -nr | head -1 3、统计当前连接本机的每隔远程主机IP的链接数,并从大到小排序 netstat -tan | grep "ESTABLISHED" | tr -s ' ' ':' | cut -d: -f6 | sort -nr | uniq -c 4、编写脚本creatuser.sh,实现如下功能,使用一个用户名作为参数,如果指定参数的用户存在,就显示用户已存在,否则添加之,并显示id号等信息 5、编写生成脚本基本格式的脚本,包括作者,联系方式,版本,时间,描述等 来源: 51CTO 作者: wx5e42e8367825b 链接: https://blog.51cto.com/14688937/2478592

Shell正则表达式笔记

☆樱花仙子☆ 提交于 2020-03-15 10:16:34
一、正则表达式是什么? 正则表达式是用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分割、匹配、查找及替换操作。 二、正则表达式与通配符 1. 正则表达式 用来在文件中匹配符合条件的字符串,正则表达式是“包含匹配”。grep、awk、sed等命令可以支持正则表达式。 2. 通配符 用来匹配符合条件的文件名,通配符是“完全匹配”。ls、find、cp这些命令不支持正则表达式,所以只能使用shell自己的通配符来进行匹配了。 3. 通配符包括 * 匹配任意字符 ? 匹配任意一个字符 [] 匹配中括号中的任意一个字符 三、cut命令 cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。 常用参数 -b :以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。 -c :以字符为单位进行分割。 -d :自定义分隔符,默认为制表符。 -f :与-d一起使用,指定显示哪个区域。 -n :取消分割多字节字符。仅和 -b 标志一起使用。 四、printf命令 1. 命令格式 printf '输出类型输出格式' 输出内容 2. 输出类型 %ns:输出字符串。n代表输出几个字符,n省略则代表全部字符 %ni:输出整数。n是指输出几个数字,n省略代表所有数字 %m.nf:输出浮点数。m和n是数字,指代输出的整数位数和小数位数。如

grep命令用法

拥有回忆 提交于 2020-03-15 10:16:02
linux grep命令 <div fc05="" fc11="" nbw-blog="" ztag="" js-fs2"=""> 1.作用 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。 2.格式 grep [options] 3.主要参数 [options]主要参数: -c:只输出匹配行的计数。 -I:不区分大 小写(只适用于单字符)。 -h:查询多文件时不显示文件名。 -l:查询多文件时只输出包含匹配字符的文件名。 -n:显示匹配行及 行号。 -s:不显示不存在或无匹配文本的错误信息。 -v:显示不包含匹配文本的所有行。 pattern正则表达式主要参数: \: 忽略正则表达式中特殊字符的原有含义。 ^:匹配正则表达式的开始行。 $: 匹配正则表达式的结束行。 \<:从匹配正则表达 式的行开始。 \>:到匹配正则表达式的行结束。 [ ]:单个字符,如[A]即A符合要求 。 [ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。 。:所有的单个字符。 * :有字符,长度可以为0。 4.grep命令使用简单实例 $ grep ‘test’ d* 显示所有以d开头的文件中包含

linux grep命令

强颜欢笑 提交于 2020-03-15 10:15:16
主要参数 [options]主要参数: -c:只输出匹配行的计数。 -I:不区分大 小写(只适用于单字符)。 -h:查询多文件时不显示文件名。 -l:查询多文件时只输出包含匹配字符的文件名。 -n:显示匹配行及 行号。 -s:不显示不存在或无匹配文本的错误信息。 -v:显示不包含匹配文本的所有行。 pattern正则表达式主要参数: \: 忽略正则表达式中特殊字符的原有含义。 ^:匹配正则表达式的开始行。 $: 匹配正则表达式的结束行。 \<:从匹配正则表达 式的行开始。 \>:到匹配正则表达式的行结束。 [ ]:单个字符,如[A]即A符合要求 。 [ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。 .:所有的单个字符。 * :有字符,长度可以为0。 默认情况下,’grep’只搜索当前目录。如果 此目录下有许多 子目录 ,’grep’会以如下形式列出: grep: sound: Is a directory 这可能会使’grep’ 的输出难于阅读。这里有两种解决的办法: 明确要求搜索子目录:grep -r grep -w pattern files : 只匹配整个单词 ,而不是字符串的一部分(如匹配’magic’,而不是’magical’), 常用grep实例 (1)多个文件查询 grep "sort" *.doc #见文件名的匹配 (2)行匹配:输出匹配行的计数

Linux-正则表达式

梦想与她 提交于 2020-03-15 10:12:05
一、正则表达式: 正则表达式就是能用某种模式去匹配一类字符串的公式,它是由一串字符和元字符构成的字符串。 所谓元字符,就是用以阐述字符表达式内容、转换和描述各种操作信息的字符。 例如: 1. \<和\>: 这两个符号分别用于界定单词的左边界和右边界。比如说"\<hello"用于匹配以hello开头的单词;"hello\>"则 相反。 就是正则表达式中的两个特殊字符,它代表的意思是一个单词的开始或结束的位置。 如:grep '\<bc\>' test.log 2. “.” (一个点)符号; 点符号用于匹配除换行符之外的任意一个字符。例如:r.t可以匹配rot、rut,但是不能 匹配root,若使用r..t就可以匹配root、ruut、rt(中间是两个空格) 如:grep 'c.f' test.log 3.“*”符号: 用于匹配前一个字符0次或任意多次,比如ab*,可以匹配a、ab、abb、等。“*”号经常和“.”号加在一起 使用。比如“.*”代表任意长度的不包含换行的字符。 如:grep 'r*t' /etc/passwd 如果把上面的'r*t'换成'r.*t',代表查找包含字母r,后面紧跟任意长度的字符,再跟一个字母t的行。 4.“\{n,m\}”符号: 虽然*可以用于重复匹配前一个字符,但却不能精确地控制匹配的重复次数,使用“\{n,m\}”符号则能更加灵活 地控制字符的重复次数