超详细的正则表达式的使用方法,学不会找我

正则表达式的基本使用

前言: 在我们开发过程中,有很多地方需要用到正则表达式。如验证用户登录信息、手机号、邮箱地址等等。那你都会正则表达式的哪几个方法呢?

首先,我们要知道什么是正则表达式。

正则表达式的定义:

  • 正则表达式 RegExp (regular expression) 是ECMAScript内置对象,是一个用于对字符串实现逻辑匹配运算的对象

正则表达式的作用:

  • 按照某种规则来匹配字符串,而正则表达式就是制定这个规则

如何使用正则表达式

  • (1) 创建正则表达式对象
  • (2) 开始匹配 使用test()方法

由于正则表达式非常的晦涩难懂,使用图形可以更好的方便理解,正所谓一图胜千言!
正则表达式图形化网站:https://regexper.com/

下面就让我们步入正题,开始学习正则。

1、元字符与原义文本字符

一个正则表达式主要由两部分组成:

  1. 原义文本字符 : 就是字符本身的含义,千万别想多

     /abc/
     // 含义,就是检查字符串中有没有abc。 别想多了
     // 不是说有a或者有b或者有c,也不是说有a 和 b 和 c
     console.log(/abc/.test('a123'));//false
     console.log(/abc/.test('ab123c'));//false
     console.log(/abc/.test('abc123'));//true
    
    
  2. 元字符 : 改变了字符串本身的含义 (相当于 js 的关键字)

     . \ | [] {
         } () + ? * $ ^
    
2、字符类

有时候我们并不想只匹配一个字符,而是想要匹配符合某一类特征的字符,这时就可以使用字符类

1、简单字符类:[]

在这里插入图片描述

 /[abc]/ 
 // 把字符a或b或c归为一类,可以匹配这类的字符
 // 含义是,匹配字符串中只要有 a或者b或者c任何一个即可
 console.log ( /[abc]/.test ( "eeeeefffff" ) );//false
 console.log ( /[abc]/.test ( "eaeeffffff" ) );//true
 console.log ( /[abc]/.test ( "ebeeeffffff" ) );//true
2、反向类(负向类):^

在这里插入图片描述

// 反向类意思是不属于某类的内容
/[^abc]/ 
// 含意是,不是字符a或b或c的内容
// 只要有任何一个字符不是a或者b或者c,就满足条件
console.log ( /[^abc]/.test ( "1abacbc" ) );//true
console.log ( /[^abc]/.test ( "aaabbbcccc" ) );//false
console.log ( /[^abc]/.test ( "aaabbbcccce" ) );//true
3、范围类: -

在这里插入图片描述
在实际开发中,如果我们需要匹配所有的数字, 可以写[0123456789] : 含义是,有任何数字的内容。如果这样写,表达式就很冗余,假如我要匹配字母,那就要写 [abcdefg…xyz],非常麻烦。
那么如何解决呢?可以使用范围类 -

[0-9] : 含义是, 0-9之间的任意字符
[a-z]: 含义是,a-z之间的任意字符
[A-Z]
  • 19
    点赞
  • 96
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
要通过Python实现微博话签到,可以按照以下步骤进行操作: 1. 首先,发送GET请求到话主页,例如:https://weibo.com/p/1008082ba2304bd954b238b1684564e6818499/super_index,通过正则表达式匹配获取到所有微博的mid,这个mid是每条微博的唯一标识符。 2. 使用Fiddler等工具打开微博,并点赞一条微博,观察数据包,到点赞的POST请求数据包。注意请求URL为https://weibo.com/aj/v6/like/add?ajwvr=6&__rnd=时间戳。 3. 遍历之前获取到的mid列表,分别发送POST请求到https://weibo.com/aj/v6/like/add?ajwvr=6&__rnd=时间戳,进行点赞操作。这样就可以在首页的微博中看到你的点赞。 4. 要进行话签到,可以发送GET请求到https://weibo.com/p/aj/general/button?ajwvr=6&api=http://i.huati.weibo.com/aj/super/checkin&texta=已签到&textb=已签到&status=1&id=1008082ba2304bd954b238b1684564e6818499&location=page_100808_super_index&timezone=GMT ***5.0 (Windows NT 10.0; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0&screen=1920*1080&__rnd=1569159499081。通过解析返回的Unicode数据,如果收到回复“今天已签到”,则表示签到成功。 请注意,以上方法仅供习和研究目的,使用时请遵守相关网站的使用规定,并尊重其他用户的权益。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [python实现微博话一键签到点赞评论](https://blog.csdn.net/qq_39510388/article/details/101175456)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值