首页 > 其他分享 >正则表达式(Swift5.7)

正则表达式(Swift5.7)

时间:2022-12-09 22:45:46浏览次数:33  
标签:123 Swift5.7 正则表达式 89 let 字符串 4567

课题

  1. 使用正则表达式匹配字符串
    使用正则表达式 "\d{3}-(\d{4})-\d{2}" 匹配字符串 "123-4567-89"
    返回匹配结果:’"123-4567-89" 以及 "4567"
  2. 使用正则表达式替换字符串(模式)
    使用正则表达式 "(\d+)-(\d+)-(\d+)" 匹配字符串 "123-4567-89"
    使用模式字符串 "$3-$1-$2" 替换匹配结果,返回结果 "89-123-4567"。
  3. 使用正则表达式替换字符串(回调)
    使用正则表达式 "\d+" 匹配字符串 "123-4567-89"
    将匹配结果即三个数字串全部翻转过来,返回结果 "321-7654-98"。
  4. 使用正则表达式分割字符串
    使用正则表达式 "%(begin|next|end)%" 分割字符串"%begin%hello%next%world%end%"
    返回正则表达式分隔符之间的两个字符串 "hello" 和 "world"。

Swift 5.7

import Foundation

let s = "123-4567-89,987-6543-21"
let r = /\d{3}-(\d{4})-\d{2}/
let results = s.matches(of: r)
for (i, m) in results.enumerated() {
    print("group \(i),0 : \(m.0)")
    print("group \(i),1 : \(m.1)")
}

let r2 = /(\d+)-(\d+)-(\d+)/
let s2 = s.replacing(r2) { m in
    "\(m.3)-\(m.1)-\(m.2)"
}
print(s2)

let r3 = /\d+/
let s3 = s.replacing(r3) { m in
    m.0.reversed()
}
print(s3)

let r4 = /%(begin|next|end)%/
let s4 = "%begin%hello%next%world%end%"
print(s4.split(separator: r4))

/*
group 0,0 : 123-4567-89
group 0,1 : 4567
group 1,0 : 987-6543-21
group 1,1 : 6543
89-123-4567,21-987-6543
321-7654-98,789-3456-12
["hello", "world"]
*/

标签:123,Swift5.7,正则表达式,89,let,字符串,4567
From: https://www.cnblogs.com/zwvista/p/16970379.html

相关文章

  • 正则表达式
    正则表达式#私藏项目实操分享#//varreg=/(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1......
  • js 正则表达式
     创建正则两种方式字面量创建正则constr=/test/;对象创建正则letr1=newRegExp("test")调用正则的test方法判断是否符合规则返回true或falseconsole.log(r.test('test')......
  • 正则表达式收藏
    一个好的网站:http://regex-lib.net/Home/有很多正则表达式  匹配中文字符的正则表达式:[/u4e00-/u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双......
  • go正则表达式的使用
    正则表达式(或RegEx)是一个特殊的字符序列,它定义了用于匹配特定文本的搜索模式。在Golang中,有一个内置的正则表达式包:regexp包,其中包含所有操作列表,如过滤、修改、替......
  • ipv6正则表达式
    ^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]......
  • 常用正则表达式
    常用正则表达式匹配中文:[\u4e00-\u9fa5]英文字母:[a-zA-Z]数字:[0-9]匹配空格:[]匹配连续空格:[]+匹配空白字符:\s匹配连续空白字符:\s+匹配中文,英文字母和数字及_:​​1​......
  • Python实验报告——第5章 字符串及正则表达式
    实例01:使用字符串拼接输出一个关于程序员的笑话 在IDLE中创建一个名称为programmer_splice.py的文件,然后在该文件中定义两个字符串变量,分别记录两名程序说的话,再将......
  • js 正则表达式
    1、字符串中是否有空格varreg=/\s/;varcontent='xx'reg.test(content)返回true2、字符串开头是否有空格varreg=/^\s/;3、字符串结尾是否有空格varreg......
  • 【转载】最全的正则表达式教程
    一、正则基础概述首先给出正则最基础的知识点概述,好让同学们能回想起一些之前学过的知识点,能更好地进行阅读这里分享一个在线练习正则的网站,同学们可以在这里进行练......
  • 【转载】有shi以来最详细的正则表达式入门教程
    本篇文章文字内容较多,但是要学习正则就必须耐心读下去,正则表达式是正则表达式其实并没有想像中的那么困难,但是想要熟练的掌握它,还是需要下功夫勤加练习的。这里讲一些......