-1

私はこのようなXMLを持っています、

<order_details>
   <order_count>#ordercount#</order_count>
   <value_date>#valuedate#</value_date>
   <report_date>2012-04-25</report_date>
   <from_facility>#fromfacility#</from_facility>
</order_details>

# で始まり # で終わるすべての値をスペースで置き換えたいと思います。

上記の XML の出力は、次のようになります。

<order_details>
   <order_count></order_count>
   <value_date></value_date>
   <report_date>2012-04-25</report_date>
   <from_facility></from_facility>
</order_details>

使ってみましたがうまくいきstring.replaceAll("<*>#.*#</*>", "")ません。

4

2 に答える 2

2

これはうまくいくはずです:

string.replaceAll(">#.*?#</", "></")

デフォルトでは、量指定子*, +, ?, {n},は貪欲です。つまり、繰り返されているサブパターンに一致する可能な限り長い文字列を試します{n,}。 上記の正規表現を例として使用して量指定子の後に追加すると、lazyになります。つまり、繰り返されるサブパターンに一致する最短の文字列を試行します。{n,m}?.*?

于 2012-05-31T11:58:19.027 に答える
0

使用するstring.replaceAll("#.*?#", "")

于 2012-05-31T11:58:21.157 に答える