2017-09-19 2 views
0

Javaでregexをどのように使用すれば、この形式の各行のサイズ/重量プロパティを使用できますか?私たちの先生が教えてくれたテキストファイルは異なる文字コードを使用しています。そのため、これらの奇妙な疑問符文字が存在します。正規表現を使用して空白文字と の間のテキストを取得する

Popcorn     Butter        6�pkg   3.99 
Laundry Detergent   2X Ultra Free Clear    50�oz   11.99 

空白文字とbetweenの間のテキストを取得するだけで十分です。

+0

'\ S(。+)\ u1234'(シンボルの' \のu1234'コード)と第1グループ – ZhenyaM

+0

を取得おそらくそれは 'と一致させることができる数字の列である "\\のD +"' 。しかし、適切な部分文字列を見つけて抽出する必要があります。 – laune

答えて

1

てみてくださいあなたは結果があなたがスペースと記号の間に任意の文字にマッチする代わりに.*\s+(.*?)�を使用することができる数であるかどうかわからない場合は、この正規表現\s+(\d+)�を使用する:

String[] strs = { 
    "Popcorn     Butter        6�pkg   3.99", 
    "Laundry Detergent   2X Ultra Free Clear    50�oz   11.99" 
}; 

String regex = "\\s+(\\d+)�"; 
Pattern pattern = Pattern.compile(regex); 
for (String str : strs) { 
    Matcher matcher = pattern.matcher(str); 
    while (matcher.find()) { 
     System.out.println(matcher.group(1)); 
     //        ^------note to get the group one 
    } 
} 

出力

6 
50 
関連する問題