2016-12-07 20 views
0

したがって、文字列X1X2X3\\\\があります。私はAlphaNumerics値をキャプチャしたいだけです。私の正規表現は([A-z0-9]*).*です。しかし、それはX1X2X3\\を返すでしょう。私のコードは次のようになります:文字列java regexの複数のバックスラッシュ

Pattern pattern = Pattern.compile("([A-z0-9]*).*"); 
Matcher matcher = pattern.matcher(str); 
matcher.matches(); 
return matcher.group(1); 

regex Answerを探してみたいですか?ないString.replaceAll()又は()置き換える:)

+2

あなたは*文字列を持っていますか* '' X1X2X3(クレジットはコメントで間違いを指摘したすべての人に行く)、または*文字列リテラル* '" X1X2X3 \\\ \ "'?また、あなたの正規表現は '[A-Z]'が英数字以外の文字とマッチすることができるので間違っています。 –

+0

文字列リテラル 'assertThat(trimSpecialCharacters(" X1X2X3 \\\\ ")、(" X1X2X3 ")); ' –

+0

ok' "([A-Za-z0-9] *)。*" 'ありがとう! –

答えて

1

問題は、同様にZa間、すなわちコードポイントを非アルファ文字を一致させることができ[A-z0-9]A-z、であるが。

使用する正しい式は、英数字の場合は[A-Za-z0-9]、事前定義文字クラスの場合は\\wです。

`` \\\\

関連する問題