2017-07-29 22 views
1

Html.fromHtml("&#160") + "| Guys hi " + Pattern.compile("\\d+")を "hey"に置き換えます。しかし、私のコードはそれをしたくありません:/私は何を変更する必要がありますか?Regexを使用して文字列内の数字を置き換えます。

マイコード:

myString.replace(Html.fromHtml("&#160") + "| Guys hi " + Pattern.compile("\\d+"), "hey"); 

説明:

  • "&#160"はHTML
  • Pattern.compile("\\d+")にスペースを表す文字列の末尾に任意の番号を見つけました。
+0

は、私はあなたが...正しく正規表現を使用しているかなり確信している、のような何かをしたい(多分?) – Mateus

+3

のErm ...何...? @MateusA。 – Michael

+0

それでは、私のコードがうまくいかないことをどう説明できますか? –

答えて

4

String replaceAllは正規表現をとります。Stringは置き換えません。パターンを使用すると、の代替オプション(補足的なものではありません)があります。また、String(s)は不変です。あなたは

myString = myString.replaceAll(Html.fromHtml("&#160") + "- Guys hi \\d+", "hey"); 

または

Pattern p = Pattern.compile(Html.fromHtml("&#160") + "- Guys hi \\d+"); 
Matcher m = p.matcher(myString); 
myString = m.replaceAll("hey"); 
+0

私はこれをテストしています、私はいくつかの問題に直面しています。もうすぐあなたに戻ってきます! –

+0

それは動作しますが、質問で入力ミスをしました。これで編集されました。 ' - 'は '|'であるはずです。あなたの最初のコード行を使って、 '|'は置き換えられません。どうすればこの問題を解決できますか? –

+0

'' \ '|' 'のように' '\'でリテラル '|'をエスケープします。 –

関連する問題