我正在开发一个应用程序,该应用程序需要在我的应用程序的多个场景中具有完全相同的表格视图,但是,表格的数据和位置将发生变化,如这两张图片所示(表格视图以红色突出显示)
在整个应用程序中,该表的所有实例均应具有:
现在,我将它们编码为两个单独的视图控制器中的两个单独的表视图,但是,我意识到我将需要在整个应用程序的更多地方复制相同的表和逻辑,这感觉不正确要走的路。所以我的问题是,如何才能以干净,干燥的方式在满足上述规格的iOS中完成表复制(使用界面生成器或swift)?
我正在尝试创建一个正则表达式模式,该模式将基于许多不同的模式和约定将字符串拆分为单词数组.规则如下:
如果它正常工作,则应该如下
"theQuick--brown_fox JumpsOver___the.lazy DOG".split_words ==
["the", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog"]
Run Code Online (Sandbox Code Playgroud)
到目前为止,我已经能够几乎到达那里,唯一的问题是它分裂了每个资本,所以"DOG".split_words是["d","o","g"]而不是["dog" ]
我还在分裂阵列上使用正则表达式和地图/过滤器的组合来获得解决方案,如果你可以告诉我如何摆脱它并仅使用正则表达式的奖励积分.
这是我到目前为止所拥有的:
class String
def split_words
split(/[_,\-, ,.]|(?=[A-Z]+)/).
map(&:downcase).
reject(&:empty?)
end
end
Run Code Online (Sandbox Code Playgroud)
从上面的测试中调用字符串时返回:
["the", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "d", "o", "g"]
Run Code Online (Sandbox Code Playgroud)
如何更新此方法以满足上述所有规格?