美文网首页00『 基础知识 』
iOS开发 - 关于正则表达式的一些记录

iOS开发 - 关于正则表达式的一些记录

作者: Li_Cheng | 来源:发表于2019-12-24 15:11 被阅读0次

引言:
正则表达式就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,用来表达对字符串的一种过滤逻辑。

通过正则表达式可以达到如下的目的:

  1. 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”);
  2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。

I. 匹配普通文本字符


正则表达式可以只包含普通的文本,代表去精确匹配这个文本。例如:

正则表达式:song
待匹配文本:xiaosongge,xiaoSongge
匹配后结果:xiaosongge

分析:正则表达式默认是区分大小写的,所以song不会匹配 "Song" 。但是大部分的正则表达式实现都提供了一个选项表示不区分大小写。

II. 匹配任意字符


.用来匹配一个任意字符,例如:

正则表达式:c.t
待匹配文本:cat cet caaat dog
匹配后结果:cat cet

分析:c.t 会匹配以 "c" 开头,以 "t" 结尾,中间为任意字符的字符串。

同理,多个连续的.可以匹配多个连续的任意字符:

正则表达式:c..t
待匹配文本:cat cet caat dog
匹配后结果:caat

III. 匹配特殊字符


.在正则表达式中含有特殊的意义,是一个特殊的字符。\也是特殊字符,可以对特殊字符起到转义作用。如果你想匹配的是一个真正的 "." 字符,需要在 . 前面加上 \ 对字符进行转义。所以,\. 表示真正的 "." 字符。

正则表达式:c.t
待匹配文本:cat c.t dog
匹配后结果:c.t

注意:因为\也是特殊字符,所以想要匹配一个真正的 "" 字符,需要使用两个反斜线\\

正则表达式:c\\t
待匹配文本:cat c\t dog
匹配后结果:c\t

IV. 使用字符集合


上面说到.能匹配一个任意字符,但是如果我想匹配几个特定字符怎么办?匹配一组特定的字符可以使用[和]元字符。

正则表达式:c[ab]t
待匹配文本:cat cbt cet
匹配后结果:cat cbt cet

分析:[ab]会匹配 "a" 或者 "b"。所以 c[ab]t 会匹配 "cat" 和 "cbt" 而不会匹配 "cet"。


相关文章

  • iOS开发-正则表达式

    iOS开发-正则表达式 iOS开发-正则表达式

  • iOS开发 - 关于正则表达式的一些记录

    引言:正则表达式就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,用来表达对字符串的一...

  • iOS 关于iOS13那些事

    本文记录一些关于iOS 13的内容,欢迎指正和补充! 一、关于iOS13适配 1.关于一些私有属性的适配,iOS ...

  • 史上最全IT技能学习公众号

    技术类 iOS开发精髓 「iOS开发精髓」是收集分享的含金量比较重的一些好的关于iOS开发的文章,在这里你可以学到...

  • iOS开发 关于iBeacon的一些记录

    更新下 把我之前写的demo找到了放到git上面了地址 最近时间一直在研究ibeacon所以把自己遇到的一些问题写...

  • iOS开发笔记

    原文请见github上iOS开发笔记 iOS开发笔记 记录了在iOS开发中踩过的坑和一些问题解决 微信的openi...

  • iOS杂记(持续更新)

    在这里记录一些关于iOS开发零碎的技巧. 如何通过一个view拿到该view当前的viewController.最...

  • iOS 学习资料

    记录iOS开发中的一些学习资料, 持续更新 OpenGL学习资料

  • iOS 表情功能

    参考文章IOS开发微博中涉及到的一些正则表达式(表情,话题,链接,@)[https://blog.csdn.net...

  • 手把手带你实现Markdown编辑器语法高亮

    源代码:ZYMarkdownEditor 什么是正则表达式? iOS开发如何使用正则表达式? 使用正则表达式匹配M...

网友评论

    本文标题:iOS开发 - 关于正则表达式的一些记录

    本文链接:https://www.haomeiwen.com/subject/ihhfoctx.html