正则表达式和非技术用户

时间:2011-09-01 21:15:35

标签: regex user-input business-rules

鉴于:

  • 您有一些可以修改的键值数据
  • 通过对数据应用过滤器来完成修改。控制变更内容的过滤器由非技术人员创建
  • 使用正则表达式设置过滤器。作为过滤器的一部分描述的规则的示例可以是“如果密钥匹配某些正则表达式,则将值替换为其他值”

你会怎样:

如果过滤器是由业务人员制作的,他们无法创建正则表达式,那么他们会以什么形式提交他们的输入,这些输入很容易转换为正则表达式?

2 个答案:

答案 0 :(得分:6)

Agent Ransack包含一个GUI编辑器,用于从普通英语创建正则表达式,我建议您查看它并实现自己的变体。

请参阅屏幕截图以获取示例:taken from app website

答案 1 :(得分:2)

如果有效,我会选择“仅限通配符”支持 - 即星号*是唯一允许的特殊字符,您可以将其转换为代码中的正则表达式.*?

大多数非技术人员都可以掌握*意思是“任何事情”。