Perfect-PCRE2

Get Involed with Perfect!

Star Perfect On Github Stack Overflow Follow Perfect on Twitter Join the Perfect Slack

Swift 4.2 Platforms OS X | Linux License Apache PerfectlySoft Twitter Slack Status

本项目提供了一个简单的解决方案,可以通过与 PCRE2 兼容的正则表达式从字符串中提取捕获组。

此软件包使用 Swift Package Manager 构建,是 Perfect 项目的一部分,但也可以用作独立的模块。

快速开始

先决条件

Swift 版本

Swift 4.2+

macOS

$ brew install pcre2

Ubuntu Linux

$ sudo apt-get install libpcre2-dev

Swift Package Manager

将依赖项添加到您的 Package.swift 文件

.package(url: "https://github.com/RockfordWei/Perfect-PCRE2.git", 
	from: "3.1.0")

// on target section:
.target(
            // name: "your project name",
            dependencies: ["PerfectPCRE2"]),

导入 Perfect PCRE2 库

将以下标头添加到您的 Swift 源代码中

import PerfectPCRE2

简单用法

let lines = try """
	HTTP/1.1 100 continue
	HTTP/1.0 200 OK
""".pcre2Match(pattern: "([A-Z]+)/([0-9.]+)\\s+([0-9]+)\\s+(.*)")

lines.forEach { line in
	print("full: $0", line[0]) // the full match
	print("head: $1", line[1]) // "HTTP"
	print("vers: $2", line[2]) // 1.1 or 1.0
	print("code: $3", line[3]) // 100 or 200
	print("stat: $4", line[4]) // continue or OK
}

更多信息

有关 Perfect 项目的更多信息,请访问 perfect.org