2013-09-25 66 views
5

私はTest.java正規表現は、Velocityテンプレートで作業していない

String regex = "<\\s*br\\s*/*\\s*>"; 

String test1 = "<br/>"; 

System.out.println(test.replaceAll(regex, " "));` 

でこれを試してみました。しかし、私は、Velocityテンプレート `

#set($brRegex = "<\\s*br\\s*/*\\s*>") 
#set($imageDescription = $imageDescription.replaceAll($brRegex, " "))` 

とで同じことをしようとすると:

#set($imageDescription = $imageDescription.replaceAll("<\\s*br\\s*/*\\s*>", " "))` 

どちらも動作しません。何か不足していますか?

+0

SO、RMVinodhへようこそ。 – Brian

+0

ありがとうブライアン、SOは素晴らしい場所です。 – RMVinodh

答えて

6

余分なバックスラッシュを省略します。それらをエスケープする必要はありません。 Velocity Template - regular expressions

#set($brRegex = "<\s*br\s*/*\s*>") 
#set($imageDescription = $imageDescription.replaceAll($brRegex, " "))` 
+1

お返事ありがとうございます。余分なバックスラッシュを削除すると、これが表示されます。原因:org.apache.velocity.exception.ParseErrorException:字句エラー:org.apache.velocity.runtime.parser.TokenMgrError:1行目、20行目に誤りがあります。発生した: "s"(115) 「<\\」 – RMVinodh

+0

それは、これは私が今 ' の#set($ brRegex ="を持っているものです。エラーは 'S'前に2つのスラッシュの迅速な対応のための – joescii

+0

感謝がまだあることを示唆しているように私には見えます($ brRegex) – RMVinodh