-5

こんにちは、数式から部分文字列を抽出し、後でそれらにいくつかの変更を加えて、次のように戻します。

((dfhkuyhu.hkjgd.hjkh + hgdfjg.uyrepo.uyu + hgdfjg.uyrepo.uyu)/(hgdfjg.uyrepo.uyu))*((khuh.jbmxcn.bnb + hgdfjg.uyrepo.uyu)/(jhxzku.kjkj.jh + hgdfjg.uyrepo.uyu))

そして、次のように各部分の最初と最後に何かを追加したい:

((Foo!dfhkuyhu.hkjgd.hjkh![hg] + Foo!hgdfjg.uyrepo.uyu![hg] + Foo!hgdfjg.uyrepo.uyu![hg]).[boo]/(Foo!hgdfjg.uyrepo.uyu![hg]).[boo])*((Foo!khuh.jbmxcn.bnb![hg] + Foo!hgdfjg.uyrepo.uyu![hg]).[boo]/(Foo!jhxzku.kjkj.jh![hg] + Foo!hgdfjg.uyrepo.uyu![hg]).[boo])

何か案が?

4

1 に答える 1

2

ルールは少し不明確ですが、英数字の各実行 (および区切りのドット) をFoo!/![hg]で囲み、各閉じ括弧を に置き換えようとしているようです).[boo]。右?

次に、これを行うことができます:

$subject =~ s/[\w.]+/Foo!$&![hg]/g;
$subject =~ s/\)/).[boo]/g;

説明:

s/abc/def/「正規表現abcが置換文字列と一致するものは何でも置換する」ことを意味しdef、元の$subject変数を変更します。

[\w.]+のような文字列にマッチしますdfhkuyhu.hkjgd.hjkh。置換文字列で$&、一致したテキストを参照します。この/gフラグは、文字列内のすべての一致を検索して置換するように Perl に指示します。

\)リテラル括弧に一致します。

于 2012-04-18T06:27:26.110 に答える