正则表达式与通配

前端之家收集整理的这篇文章主要介绍了正则表达式与通配前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

先来点shell script的初步:

shell 脚本使用#! 开头,后跟解释器的路径

给脚本文件赋予可执行属性: chmod u+x test.sh

执行shell 脚本:./[脚本名]

或者直接: bash 脚本

ls -l /etc/sh*命令 选项  

参数使用;可以在同一行写多条语句


edemon@linux:~$ cat tt
#!/bin/bash
echo "the time is "
date
echo here is :
who
edemon@linux:~$ bash tt
the time is
2016年 04月 29日 星期五 08:58:57 CST
here is :
edemon   tty7         2016-04-29 16:44 (:0)
edemon@linux:~$ chmod u+x tt
edemon@linux:~$ ./tt
the time is
2016年 04月 29日 星期五 08:59:30 CST

#它和编译生成的二进制文件不同:

edemon@linux:~$ gcc t.c -o exec
edemon@linux:~$ ./exec
hello!
edemon@linux:~$ ls -l |grep exec
-rwxrwxr-x 1 edemon edemon     8592 4月  29 09:01 exec
edemon@linux:~$ cat exec
ELF>0@@�@8    @@@@@@��88@8@@@�� ``(0    #乱码
元字符:描述字符的字符 正则表达式regular expression (RE,正则表达式) 用于文本操作和字符串的操作,用于数据过滤的操作。 几个重要的元字符: * 重复前面的字符0次或者多次 . 匹配任意字符 ^ 匹配行首,或者后面字符的非 $ 匹配行尾 [] 匹配字符集和 \ 转义字符 \<\> 精确匹配 \<n\> 精确匹配前面字符出现n次 \<n,\> 精确匹配前面的字符至少出现n次 \<n,m> 精确匹配前面的字符出现n~m次 例子: ^abs 匹配abs开头的行   vs* 这些字符串均匹配它:vss,vs,vssss cv$ 匹配行尾是cv的所有的行 ^$ 匹配所有的空行 ^.$ 匹配一个字符的行 [0123456789] [0-9] 上面两个表达式的意义是一样的,匹配任意一个0~9的阿拉伯数字 [^3-8] 不再3~8内的数字 [A-Za-z][A-Za-z]* 匹配任意一个英文单词(非空) cb\<3\>a cbbba cb\<3,\>a cbbbbba,cbbba,cb\<3,5\>a b可以重复3~5次 [a-z] \<3\> 精确匹配3个小写字符 通配中的元字符和正则表达式中的元字符的含义不是完全一样的。比如*在正则表达式中的含义是前面字符的0个或者多个重复,在通配中是任意位置的任意字符; ^在正则表达式中是行首匹配,在通配中是取反。 通配例子: edemon@linux:~$ ls *.tex texmaker.tex edemon@linux:~$ ls my*.doc    mycode2.doc mycode.doc edemon@linux:~$ ls mycode?.doc mycode2.doc {}表达匹配{}内的所有的选项,即“条件或”的关系: edemon@linux:~$ ls {tex,.java} texmaker.tex t.java 原文链接:https://www.f2er.com/regex/359304.html

猜你在找的正则表达式相关文章