我正在尝试形成一个正则表达式来匹配下面的字符串。
ABC_NACKS.*
ABC_ACKS.*
根据我的理解,常规应该是:
ABC_[N*]ACKS.*
但令人惊讶的是,这不起作用。
请帮助我在哪里出错。我现在已经尝了好几次了。我需要帮助。
答案 0 :(得分:3)
您不需要角色类,也需要逃离.
和*
,以便它代表一个文字点和*
ABC_N*ACKS\.\*
如果它不包含文字.*
,您可以使用它,
ABC_N*ACKS.*
N*
匹配文字N
零次或多次。.*
匹配任何字符零次或多次。答案 1 :(得分:2)
您的意思是ABC_N*ACKS.*
,但这会在下划线后面允许任意数量的N
个字符。
也许ABC_N?ACKS.*
更接近您的实际意图(0或1 N
)。
字符类(方括号中的子表达式)具有自己的语义。了解他们:http://www.regular-expressions.info/charclass.html