12.19笔记

1.var reg=/./   var reg=/\./

前者代表任意一个字符而后者代表这个字符串中得有一个.

2.?的使用

如果单独的一个字符后面带? var reg=/\d?/ /n?/

代表一个或0个这个字符的出现

如果是量词+和*,{2,}后面带? 取消正则的贪婪性  在捕获阶段

3.捕获

1.普通捕获 exec() match()

普通捕获有懒惰性,给正则添加一个修饰符g可以解决,match是将所有捕获的内容放在一个数组中并返回。Match就是对exec的一个简单封装。

2.分组捕获 捕获的方法还是exec 和match

正则在结构上发生了变化,加()

Var reg=/(a)(b)/

Exec()和match()在非全局下分组捕获是相同的,在捕获的过程中即捕获大正则里的内容也捕获分组中的内容并都返回。

Exec()和match()在全局下的分组捕获是不一样的,exec()不变。但是match()只捕获大正则里的内容

  3. 分组捕获的优势

    A.可以提升优先级

    B.可以捕获引用

\1代表分组1里面的内容  \2代表分组2里面的内容

前提是分组必须在引用之前,如果\2在分组的前面代表普通的表达式???

分组的结果存在正则类RegExp的$number属性下。

\1 和RegExp.$1 二者都是分组引用

\1只能使用在正则表达式里面,RegExp.$1 可以外面使用。都是在捕获完成的条件下。

  4. 在捕获的过程中怎样取消捕获分组中的内

在分组的前面加上?:就ok了

?:和?=的区别

?:取消捕获分组中的内容的

?=  a(?=s) 

4.replace细说

Replace是字符串的一个方法,他有两个参数,用后者将前者替换掉,并返回一个新的字符串,但是没有改变原来的字符串.

  1. 如果第一个参数是字符串,只改变一次
  2. 如果第一个参数是正则,捕获一次改变一次
  3. 如果第二个参数是匿名函数,每捕获一次这个匿名函数会执行一次,return的是什么,那就替换成什么。这个匿名函数的arguments有三个元素。

正则详细讲解

  (1)每一个正则都是由元字符和修饰符组成

  (2)元字符 在//之间有特殊意义的字符

  (3)具有特殊意义的元字符

  1. \转义字符,转义后面后面字符所代表的含义
  2. ^以某一个元字符开始   读kangchuo
  3. $以某一个元字符结尾
  4. \n匹配一个换行符
  5. .除了\n以外的任意一个字符

     

  6. ()分组,把一个大正则划分为几个小正则

  7. X|y x或者y中的一个

  8. [xyz],x或者y或者z三者中的一个
  9. [^xyz] ^读作v

 

Var reg=/^\d$/  只能是一个0-9之间的数字

是因为^和$不占用位置只有\d占位置

4.代表出现次数的量词的元字符

1.*代表出现0-多次

2,+出现1到多次

3,?出现0都1词

4,{n}出现n词

5,{n,}出现n到多次

6.{n,m}出现n到m次

规律

[]

  1. 在[]中出现的所有的字符都是代表本身意思的字符
  2. [.]就是本身的.[+]代表的就是+本身
  3. []里面不识别双位数[12] 不是12是1或者2

[12-68] 代表的是1或者2-6中的一个或者8

案例1 有效数字的正则

0.4 12.0 12 +12 -12 09

var reg=/^[+-]?(\d|([1-9]\d+))(\.\d+)$/

|的混乱

Reg=/^18|19$/ 和/^(18|19)$/

前者表达的优先级特别多

  1. 可以是以1开头以9结尾的字符串 189 119 119等
  2. 也可理解为以18开头或以19结尾 181 119 等

而后者只有一种就是18或者19

分组提升了优先级

分组的第一个作用就是改变优先级

案例2

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/yangyongqiang/p/10154426.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据提供的引用内容,出现"ssh: connect to host 10.32.12.19 port 22: Connection refused"错误可能是由于以下原因导致的: 1. 网络连接问题:请确保你的网络连接正常,并且能够访问目标主机。你可以尝试使用ping命令来测试与目标主机的连接性。例如,在命令行中输入`ping 10.32.12.19`来检查与目标主机的连接。 2. SSH服务未启动:请确保目标主机上的SSH服务已经启动。你可以通过运行`sudo service ssh start`来启动SSH服务。 3. 防火墙设置:防火墙可能会阻止SSH连接。请检查目标主机上的防火墙设置,并确保允许SSH连接通过。你可以尝试临时禁用防火墙来测试是否是防火墙导致的问题。 4. SSH配置错误:请检查你的SSH配置文件,确保正确配置了目标主机的IP地址和端口号。你可以在配置文件中找到这些信息并进行相应的更改。 5. 目标主机不支持SSH连接:请确保目标主机支持SSH连接,并且已经正确配置了SSH服务。如果你无法确定目标主机是否支持SSH连接,请联系系统管理员或主机提供商以获取更多帮助。 以下是一些可能有用的命令和步骤: 1. 使用ping命令测试与目标主机的连接性: ```shell ping 10.32.12.19 ``` 2. 启动SSH服务: ```shell sudo service ssh start ``` 3. 检查防火墙设置: ```shell sudo ufw status ``` 4. 临时禁用防火墙: ```shell sudo ufw disable ``` 5. 编辑SSH配置文件(例如,/etc/ssh/sshd_config): ```shell sudo nano /etc/ssh/sshd_config ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值