xml ファイルに変更を加えるための perl スクリプトを作成しています。必要なことの 1 つは、あるエンティティを見つけて別のエンティティを置き換えることです。
見つけたい
<myelement>▪</myelement>
と置き換えます
<myelement>•</myelement>
XML::DOM::Node->expandEntityRefs() 関数を使用しようとしていますが、運がありません。私は基本的に次のようにしようとしています:
# $nodeMyElement declared at top of function, not shown
my $textNode = $nodeMyElement->getFirstChild();
my $sChildText = $textNode ->toString();
# when calling from main node, the string is just nothing
my $test = $nodeMyElement ->expandEntityRefs( $sChildText );
# メイン パッケージから呼び出すとエラーが発生する: Can't use string ("XML::DOM::Node") as an ARRAY ref while "strict refs" in use at C:/Perl/site/lib/XML/ DOM.pm 1244 行目。 my $test2 = XML::DOM::Node->expandEntityRefs( $sChildText );
私が間違っていること、またはこの問題に対するより良いアプローチに関するアイデアはありますか? ありがとう、bp