Outlinebox[text()='text']で変数を使用する方法みなさん、こんにちは。
コードに問題があります。
MinParam=(report << XPath("//OutlineBox[text()='min']//OutlineBox[text()=mindist]//StringColBox[StringColBoxHeader[text()='Parameter']]"))<<GET></GET>Here the variable is "mindist" and it equals "Normal 2 Mixtures". However, I can't get it to work.
Any suggestions?
Thanks!
Steve
<LINGO-LABS id="lingo-labs-819647" slang="en-US" mode="CREATE"><LINGO-LABEL>自動化とスクリプト</LINGO-LABEL></LINGO-LABS>Re: Outlinebox[text()='text']で変数を使用する方法文字列に組み込むこともできます
xpath_query = "//OutlineBox[text()='min']//OutlineBox[text()='" || mindist || "']//StringColBox[StringColBoxHeader[text()='Parameter']]";
MinParam = (report << XPath(xpath_query)) << get;
あるいは、Eval Insertを使うのが良いかもしれません
xpath_query_template = "//OutlineBox[text()='min']//OutlineBox[text()='¤mindist¤']//StringColBox[StringColBoxHeader[text()='Parameter']]";
xpath_query = Eval Insert(xpath_query_template, "¤");
MinParam = (report << XPath(xpath_query)) << get;
Re: Outlinebox[text()='text']で変数を使用する方法@jthi さん、ありがとう!
それはうまくいきました! また、3 つの混合物の名前は、最後に分布が追加されているため異なっていることに気付きました。これがおそらく実際の問題だったのでしょうが、今では使用できるオプションが増えました。

オプション 2 について、これらは何ですか?
"¤"
Re: Outlinebox[text()='text']で変数を使用する方法
Re: Outlinebox[text()='text']で変数を使用する方法^ はテキスト内に頻繁に出現するため (ほとんどの場合、正規表現を使用するすべてのものを台無しにするため)、私は「デフォルト以外の」開始/終了文字 (置換される変数の場所を示すために使用) を使用します。Eval Insert(string, 、 、< < ) 。
テキストの代わりにcontainsを使用することもできます。構文は次のようになります(XPathにはstarts-withなどもあります)。
Report(dist) << XPath("//OutlineBox[contains(text(), 'Fitted Normal 3 Mixture')]//StringColBox[StringColBoxHeader[text()='Parameter']]");
単一の適合正規分布 3 混合分布とその下の文字列列ボックスだけにアクセスする必要がある場合は、XPath ではなくレポートの添え字を使用する方が簡単かもしれません。ワイルドカードもサポートされていますが、XPath よりもできることがはるかに限られています (それでも時々役立ちます)。 表示ボックス オブジェクトへの参照を取得する添え字/ワイルドカード文字列による参照の作成
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Cytometry.jmp");
dist = dt << Distribution(Column(:CD8));
dist << Fit Normal 3 Mixture;
scb = Report(dist)[OutlineBox("Fitted Normal ? Mixture ?"), StringColBox("Parameter")];
scb << get;