0

だから私はこのjava文字列を持っています。

<script type="text/javascript"  
    src="https://c328740.ssl.cf1.rackcdn.com/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
<script type='text/x-mathjax-config'>
    MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}});
</script>

に置き換えたいと思い""ます。

私がしているのはこれです:

.replaceAll("(<img[^>]*>)|(<script[^>]*>)", "")

MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}});ただし、これはスクリプトタグ間を削除しません 。

上記の正規表現はすべての<img>タグも検索し、それらをに置き換えます。これ""は、上記の<script>タグとそれらの間のすべてについても達成したいものです。

4

2 に答える 2

1

これは機能しているようです

str = Pattern.compile("<img .+?</img>|<script .+?</script>", Pattern.DOTALL).matcher(str).replaceAll("");

あなたのstrがCRLFを持っていることに注意してくださいこれがなぜDOTALLなのか

于 2013-02-15T06:37:31.497 に答える
0
If you want to replace part of the string between the tags to replace then try this.

string = string.replaceAll("(<script>.*?)Here is our keyword which should be replaced(.*?</script>)","$1Replaced with:$2");

タグ間のすべてを「」に置き換えたい場合は、これを試してください。

s = s.replaceAll("(<script>).*?(</script>)","");
于 2013-02-15T06:41:36.610 に答える