我正在开发一个 Rails 3 应用程序,其中包含多个包含下拉选择的表单。选择中显示的选项应可供应用程序管理员配置。
管理员可以在文本区域中输入选项。文本区域中的每一行都定义了要在选择中显示的内容。
A - Option 1
B - Option 2
C - Option 3
现在棘手的部分是验证管理员在选项中输入的内容。每个选项行都应该遵循一定的模式,其中第一部分(连字符之前)是选项的关键,第二部分(连字符之后)是一些解释。
我目前正在使用以下正则表达式来验证每一行:
(.+) *- *(.+)
现在我想同时验证多行。上面的例子应该是有效的,而下面的例子应该是无效的:
示例 1:
A - Option 1
B - Option 2
C
示例 2:
A - Option 1
B - Option 2
- Option 3
我在正则表达式中添加了分隔符以匹配行(即: (^(.+) *- *(.+)$)+ ),但它没有按预期工作。