正则表达式 - 匹配大写字母,特定字符后的简单字符串

时间:2015-10-02 06:49:55

标签: regex

我有以下字符串:

step_User_Save_action_Details

我在每个下划线符号之后检查大写或简单的字母,但不是所有的资本......

示例:

step_User_Save_Action_Details - 应该返回False

step_user_save_Action_Details - 应该返回True

step_user_save_action_details - 应该返回True

尝试这个,但似乎不是它的抓住

\bstep(?:_[a-z][a-zA-Z]*)+\b

2 个答案:

答案 0 :(得分:3)

您可以使用基于正面的负面预测:

/\bstep(?!(?:_[A-Z][a-zA-Z]*)+\b)(?:_[a-zA-Z]+)+\b/

RegEx Demo

(?!(?:_[A-Z][a-zA-Z]*)+\b)是一个负面的预测,如果下划线后面紧跟一个大写字母,将会使比赛失败。

答案 1 :(得分:0)

我错过了什么吗?你不能使用

/_[a-z]/

(匹配下划线后面包含小写字母的任何字符串)。