Java 使用正则表达式获取空白字符和࿽;

Java 使用正则表达式获取空白字符和࿽;,java,regex,Java,Regex,我将如何在Java中使用正则表达式来定义此格式中每行的大小/重量属性?老师给我们的文本文件使用了不同的字符代码,这就是为什么会出现这些奇怪的问号字符 Popcorn Butter 6�pkg 3.99 Laundry Detergent 2X Ultra Free Clear 50�oz 11.99 获取介于空白字符和�

我将如何在Java中使用正则表达式来定义此格式中每行的大小/重量属性?老师给我们的文本文件使用了不同的字符代码,这就是为什么会出现这些奇怪的问号字符

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

获取介于空白字符和� 就足够了。

尝试使用此正则表达式
\s+(\d+)�,如果不确定结果是否为数字,则可以使用
*\s+(*)�以匹配空格和符号之间的任何字符� :

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

\s(+)\u1234
(其中
\u1234
符号代码)并获取第一组可能是可以与
“\\d+”
匹配的数字序列。但是您必须找到并提取适当的子字符串。