0

这个字符串(kwordSyntaxSearch)应该通过条件:

( sdf sdf )
cout<<"for you";

return 0; 
}

这是我的条件:

   /^\s*\([\s\S]*\)\s*[^\{][\s\S]*;\s*(if|else|else if|for|while|do|switch|\}|return)[\s\S]*$ /.test(kwordSyntaxSearch)

它不想通过条件,我错过了什么?

4

1 回答 1

2

您需要在字符串结尾后有一个空格。删除该空间:

/^\s*\([\s\S]*\)\s*[^\{][\s\S]*;\s*(if|else|else if|for|while|do|switch|\}|return)[\s\S]*$/

请注意,您可以缩短[\s\S]to [^](匹配每个字符“除了没有字符”的字符类):

/^\s*\([^]*\)\s*[^\{][^]*;\s*(if|else|else if|for|while|do|switch|\}|return)[^]*$/
于 2013-08-21T17:32:42.757 回答