问题
运行以下代码
A = '.php?journalid=1&page=journalapp';
expression = ['.php?journalid','(.*?)','&page=journalapp'];
regexp(A, expression,"tokens")'
预想输出是1,真实输出是空集
解决
- 问题出在正则表达式中的问号(?)上。在正则表达式中,问号有特殊含义,表示前面的字符出现 0 次或 1 次。所以这里需要对问号进行转义,即使用反斜杠(\)进行转义。
代码修改为:
A = '.php?journalid=1&page=journalapp';
expression = '.php\?journalid=(.*?)&page=journalapp';
regexp(A, expression, "tokens")'
输出: