当前位置: 首页 > 知识库问答 >
问题:

用于解析给定字符串的百分比范围的Regex

赵奕
2023-03-14

任何帮助都是徒劳的。

共有1个答案

韩景辉
2023-03-14

您可以使用

\b(?:\d+[—–-])?\d+(?:%|percent\b)

在分数支持下,它可能看起来像

\b(?:\d+(?:\.\d+)?[—–-])?\d+(?:\.\d+)?(?:%|percent\b)

请参见regex演示。详情:

    null
import java.util.regex.*;

class Test
{
    public static void main (String[] args) throws java.lang.Exception
    {
        String s = "both 56% as well as 30-60%.";
        Pattern pattern = Pattern.compile("\\b(?:\\d+[—–-])?\\d+(?:%|percent\\b)");
        Matcher matcher = pattern.matcher(s);
        while (matcher.find()){
            System.out.println(matcher.group()); 
        } 
    }
}
56%
30-60%
 类似资料:
  • 问题内容: 我有一个程序可以从Twitter流API实时解析推文。在存储它们之前,我将它们编码为utf8。某些字符最终以?,??或???出现在字符串中 而不是它们各自的unicode代码,并且会引起问题。经过进一步调查,我发现有问题的字符来自“表情符号”块 U + 1F600-U + 1F64F和“其他符号和象形文字”块 U + 1F300-U + 1F5FF。我尝试删除,但未成功,因为匹配器最终

  • 我试图将日期字符串解析为,如下所示。 但我有点例外,

  • 我正在尝试编写一个Heap排序方法,它只在传入方法的给定范围内执行排序。传入的范围是低和高,这些值对应于堆中的值,而不是堆的索引。例如,输入数组可能是:28 10 49 20 59 61 17,如果low=49,high=61,Heap排序后的结果数组将看起来像这样:28 10 20 49 59 61 17。范围之外的值保持不变。我已经有了一个工作的Heap排序方法,但我的问题是如何修改这个方法以

  • 我只是在玩一些代码,我似乎不明白我哪里出错了。 我有一个“数字”字段,存储01-20之间的数字,后跟一个字母。我已经创建了一个局部变量,将前2个数字存储为字符串,但如果范围在01-20之间,我似乎无法使范围返回真。注意00不是有效的数字。 有什么想法吗?

  • 问题内容: 因此,我正在编写一个简单的程序来输入字符串并计算总数。的米 所以,这是我的代码 where 和str是我接受过的字符串,但是此错误不断出现 这是什么错误以及如何将其删除? 问题答案: 字符串,有效索引从0到n-1; 更改 至

  • 问题内容: 我需要用%符号替换字符串中的空格,但是我遇到了一些问题,我尝试的是: 但这给我替换功能一个错误。 然后: 但是它仍然给我替换函数错误。 我尝试使用unicode符号: 但是它仍然会给出错误。 有一个简单的方法吗? 问题答案: 是您想要的方法。 更换 与 我建议您在Java中使用进行编码。