可能是转义字符再次转义的问题,也有可能是QString再次使用会自己添加一对双引号的问题,反正这样用就没问题了。
QString global_operator::decode_nodes(QString node_text)
{
qDebug()<<"来了吗?";
node_text = remove_comments(node_text);
//似乎不能赋值再传给vap
// QString pattern = "\\b_*[a-zA-Z]+[a-z0-9A-Z]*\\b@\\{\\S+\\}";
// QRegExp vap(pattern);
//同样的东西输出也不一样,这样子输出没有双引号
// qDebug()<<pattern;
// qDebug()<<"\\b_*[a-zA-Z]+[a-z0-9A-Z]*\\b@\\{\\S+\\}";
//正则表达式的正确打开方式似乎只能这样
QRegExp vap("\\b_*[a-zA-Z]+[a-z0-9A-Z]*\\b@\\{\\S+\\}");//varible@{part} 的正则表达式 vap
if(vap.indexIn(node_text) != -1)
{
qDebug()<<"来了";
}
return node_text;
}