是否有可能创建一个可重用的 Swift 5.8+ Regex
模式,其中包含一个变量(非固定)组件?如果是,如何实现?
从概念上讲,考虑一种使用关键字变量作为正则表达式的一部分的用例。这类似于在 String
类型中的插值。
func example(keyword: String) {
// non-functional concept shorthand
var regex = /…\(keyword)…/
// do something with regex
}
很可能一个/…/
正则表达式文字没有支持这种方法的语法。并且,\(…)
String
插值语法和正则表达式(…)
捕获语法之间的相似性可能会引发问题。
相反地,是否可以使用其中几种较新的(非NSRegularExpression
)正则表达式定义方法来支持可变的String
子组件?
/.../
语法背后的动机因素之一,以区别于现有的"..."
: "它将与其他字符串字面量特性(如插值)不兼容。" SE-0354 正则表达式字面量 - Alexander/.../
语法背后的动机因素之一,这是为了避免与其他字符串字面量特性(比如插值)不兼容。SE-0354 正则表达式字面量 - undefinedRegexBuilder
。 - marc-medleyNSRegularExpression
(macOS10.7+,…)相对应的正则表达式字面量和RegexBuilder
(macOS 13+,…)这一组正则表达式功能。 - marc-medleyNSRegularExpression
(macOS10.7+,…)相对应的正则表达式字面量和RegexBuilder
(macOS 13+,…)的一组正则表达式功能。 - undefined