1

好的,我想做的是检查是否存在

  • “测试项目-1”
  • 大于 1 的数字
  • “KG. Kg, kg, Kilo(s) or Kilogram(s)”列表中可能出现的单词之一

其中任何项目可以按任何顺序排列,并且彼此之间不得超过 6 个字。

必须在正则表达式中完成,因为无法访问底层脚本引擎

这就是我所拥有的,因为有一种检查更大的方法,然后我决定使用 1-999 的范围进行数字检查。

\b(?:[T|t]estItem-1\W+(?:\w+\W+){1,6}(^[0-9]|[1-9][0-9]|[1-9][0-9][0-9])$)\W+(?:\w+\W+){1,6}[K|k]il[o|os]|[K|k][[G|GS]|[g|gs]]|[|K|k]ilogra[m|ms]\b

我需要找到的示例如下 -

“TestItem-1 在 12 公斤以上的数量上不稳定”
“1 公斤的 TestItem-1”

虽然我不想找到——

“15 个单位的 TestItem-1”

我知道我得到的不是工作每个部分似乎彼此独立但不能一起工作。

我将其传递给比我更伟大的思想:)

4

1 回答 1

0

你可以尝试这样的事情:

\b(?:[2-9]|\d\d+)\b\s\b(?:KG.|Kg,|kg,|Kilos?|Kilograms?)\b(?:\S+\s){0,6}\bTestItem-1\b|\bTestItem-1\b(?:\S+\s){0,6}\b(?:[2-9]|\d\d+)\b\s\b(?:KG.|Kg,|kg,|Kilos?|Kilograms?)\b

复制并不理想,但没有环顾四周,这是我能想到的最好的。我会尝试改进一下。

于 2013-04-24T17:39:32.320 回答