[求助]请帮忙解释一下这个正则是什么意思
bool(re.search(r'(?:(x)|y)(?(1)y|x)', 'xy'))这里?(1)是什么意思,搞不懂了,请解释一下,谢谢 (?:(x)|y)(?(1)y|x)首先,这个正则表达式的目的是匹配由2个字符组成的字符串,这个正则表达式可以匹配xy和yx这两个字符串。(?:(x)|y)这一段表示第一个字母可能是x,也可能是y,并对x进行分组捕获。(?(1)y|x)这一段表示如果捕获到x,则下一个要匹配的字符是y,否则下一个要匹配的字符是x。这种用法是正则里的if、else语句。
如果你看了我的解释还不清楚的话,如果你英文比较好的话,那么你可以自行参阅perlre。
想了解更多的perlre的相关信息吗?请猛戳这里! 弄明白了,?(1),是调用分组1, ?()...|...是if else语句。
谢谢 学习了
回复 2# yestreenstars
条件正则:mrgreen:不加表情字数不够。
页:
[1]