2016-07-27 9 views
0

非常にシンプルで、他の場所では動作していますが、Androidでは動作していないものです。文字列がA +以外のものであれば、matcherがTRUEを返すようにします。負のlookbehindはAndroid 6.0では無効ですか?ここに私の働いていない正規表現です:Android matcher Regex

^(。(?! A \ +)*)$

私が合格した場合、A-またはAは+それがFALSE戻っています。 A +の場合にのみFALSEを返します。

+1

S = 'A +' 未本当に良い使用:次のことを試してみてください。また、私たちにペーストコードをカットする方がずっと簡単なコードを試してみてください。 – danny117

+0

'!String#startsWith(" A + ")'メソッドを使用しないのはなぜですか?それは同じことをするでしょう。 – pxsx

答えて

0

プラス記号がエスケープされていません!真のシングルケースのための正規表現の

^((?!A\\+).*)$

+0

ああ、ありがとう!それはうまくいった! –

+0

私はそこに1つのスラッシュを入れましたが、ダブルはありませんでした。 –

+0

はい - 単一のスラッシュはJavaエスケープ用に予約されています。だから正規表現のエスケープのために二重を必要とする。 – dipdipdip

関連する問題