我有以下格式的数据
name | height | hex assigned
[alphanumeric and spaces] | [numeric] cm| [hex]:[hex]
20 char | 5 char | 1 char: 1 char我想要做的是,匹配regexp
${escaped}= Regexp Escape '[A-Za-z0-9_\s] | [0-9]+ cm| [0-9a-f]:[0-9a-f]'
Should Match Regexp ${text} ${escaped}虽然文本是正确的,但测试总是失败。
如果有人能指出我做错了什么,我将不胜感激。
发布于 2015-05-27 00:13:31
如果对正则表达式进行转义,则实质上是将表达式转换为固定字符串。您还有一个问题,即您的模式以单引号开始和结束。由于robot将整个单元格视为表达式,因此只有以单引号开头和结尾的表达式才会匹配。
该解决方案需要对您所做的操作进行一些更改:
^和$)中对这些管道进行了特殊处理,除非您希望匹配robot文件中\特殊的模式,因此要在模式中使用反斜杠,必须在定义模式时包括两个反斜杠<代码>H213<代码>G214我认为下面的代码可以满足您的需求:
*** Variables ***
${pattern} ^[A-Z0-9_\\s]{1,20} \\| [0-9]+ cm\\| [0-9A-Fa-f]:[0-9A-Fa-f]$
*** Test cases ***
Example
Should Match Regexp 12345678901234567890 | 1 cm| 3:5 ${pattern}发布于 2015-05-26 23:14:02
https://stackoverflow.com/questions/30462386
复制相似问题