Hi all, I am trying to reply back to messages that have following specific keywords as below SYS1, SYS2, SYS3, SYS4, SYS5, SWE1 to SWE6
SYS can also be SYSTEM, SYS
These keyword also include other words along with them such as SYS1.BP1, SYS1.process etc. for further conversations.
I tried using the following regex for SYS
\bsys.{0,3}0?[1-5]\b
and I also added the following regex for replying saying it is not valid
\bsys.{0,3}0?[6-9]\b
\bsys.{0,3}[1-9][0-9]\b
but I am not getting the expected results

I have the following examples in my nlu.yml file
- intent: regex_challenge
examples: |
- is [system1](regex_system) regex?
- what is [sys2](regex_system)
- what is [sys2](regex_system)
- what is [sys3](regex_system)
- what is [sys4](regex_system)
- what is [sys5](regex_system)
- intent: out_of_regex_challenge
examples: |
- is [system0](regex_out_of_system) regex?
- what is [sys54](regex_out_of_system)
- is [system11](regex_out_of_system) regex?
- is [system22](regex_out_of_system) regex?
- [system232546](regex_out_of_system)
I have the following pipeline
- name: WhitespaceTokenizer
- name: RegexFeaturizer
alias: "regex"
"case_sensitive": False
"use_word_boundaries": True
- name: LexicalSyntacticFeaturizer
- name: CountVectorsFeaturizer
- name: CountVectorsFeaturizer
analyzer: char_wb
min_ngram: 1
max_ngram: 4
- name: DIETClassifier
epochs: 100
constrain_similarities: true
- name: EntitySynonymMapper
- name: ResponseSelector
epochs: 100
constrain_similarities: true
- name: FallbackClassifier
threshold: 0.01
ambiguity_threshold: 0.1
Is there a way I can improve the regex or should I try any other method