例:
QFile controller_selected_file(loaded_file);
if (controller_selected_file.open(QIODevice::ReadOnly))
{
// grab a data
QTextStream in(&controller_selected_file);
// read all
QString read_data = in.readAll();
// Regex for match function "public function something()"
QRegExp reg("(static|public|final)(.*)function(.*)[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]", Qt::CaseInsensitive);
// Read by regex and file
reg.indexIn(read_data);
QStringList data_render = reg.capturedTexts();
qDebug() << data_render;
qDebug() << data_render[0];
qDebug() << data_render[1];
qDebug() << data_render[3];
// ...
}
public function somefunction()
ファイル内のすべての場所と別の場所にあるファイルを取得したいのですが、ファイル文字列全体を受け取るか、最初の配列public function something($a,$b = "example")
だけを受け取ります。public
したがって、配列として表示されるすべてのデータを取得したい:
public function somefunction()
.
簡単に言えば、ファイル内のすべての関数名を解析します。
QRegexp 式での正規表現の全機能:
(static|public|final)(.*)function(.*)[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]
編集:PHPファイルの文字列に表示されるすべてを取得したい。正規表現で定義された文字列ではなく、ファイル内のすべての文字列を受け取ると、問題が発生します。
敬意をありがとう!