首页 > 其他分享 >汉字数字等多类型字符串中提取数字

汉字数字等多类型字符串中提取数字

时间:2024-01-15 15:55:28浏览次数:29  
标签:数字 matcher number 汉字 Pattern 字符串 input String

使用正则表达式

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main {
    public static void main(String[] args) {
        String input = "你好6.6%";
        double number = extractNumber(input);
        System.out.println(number);
    }

    private static double extractNumber(String input) {
        Pattern pattern = Pattern.compile("(\\d+\\.\\d+)"); // 匹配数字,包括整数和小数
        Matcher matcher = pattern.matcher(input);
        if (matcher.find()) {
            String numberStr = matcher.group();
            return Double.parseDouble(numberStr);
        } else {
            return 0; // 如果没有找到数字,返回0
        }
    }
}

标签:数字,matcher,number,汉字,Pattern,字符串,input,String
From: https://www.cnblogs.com/fchhk-blog/p/17965547

相关文章

  • Photoshop 2024:数字图像处理的行业标准 mac/win版
    Photoshop2024是一款功能强大的数字图像处理软件,被广泛用于创意设计和视觉效果制作。这款软件提供了广泛的工具和功能,使用户能够进行各种复杂的图像编辑和合成工作。→→↓↓载Photoshop2024mac/win版Photoshop2024在图像处理方面具有许多优势。首先,它支持各种图像格式,包括......
  • 一种基于偏移流和纯字符串流来存储和读取字符串列表的方法【C#】
    字符串的存储长度是可变的,在C#中,BinaryWriter和BinaryReader在Write,ReadStirng的时候,都在单个流中字符串的二进制数组前面加了一个二进制数组的长度信息,方便读取的时候,造成了记录字符串的流并不纯粹是字符串的内容。但是,有时候,我们可以,也可能必须记录纯粹的字符串的二进制内容,然后......
  • 数字生成游戏
    数字生成游戏题目描述小明完成了这样一个数字生成游戏,对于一个不包含的数字来说,有以下种生成新的数的规则:将的任意两位对换生成新的数字,例如可以生成;将的任意一位删除生成新的数字,例如可以生成;在的相邻两位之间之间插入一个数字,需要满足。例如可以生成,但......
  • 达梦数据库:DM变量的定义与赋值、字符串拼接
    1、变量的定义与赋值SqlServer格式declare@pintset@p=1;达梦数据库格式declarepint;p:=12、字符串拼接的符号连接操作符对两个运算数进行运算,其中每一个都是对属于同一字符集的字符串的求值。它以给定的顺序将字符串连接在一起,并返回一个字符......
  • java中数组和字符串
    数组数组的声明方式:类型[]变量;数组的创建方式:new类型[数组长度]数组的简单声明并且赋值//声明一个数组,它的长度是3String[]arrs=newString[3];arrs[0]="张三";arrs[1]="李四";//访问数组的值System.out.println(arrs[0]);输出的是张三//获取当前数组的长......
  • 「杂谈」字符串 Hash
    我们常用的字符串Hash形如:\[f(s)=\sum_{i=1}^{n}s_i\timesb^{n-i}\bmodp\]但是经常有人写出不正确的Hash。举例说明,以下Hash是不正确的:自然溢出Hash。固定底数和模数,模数是\(2^{64}\)级别的Hash。固定底数和模数,模数数\(2^{32}\)级别的双Hash。具......
  • P52 数组中出现次数超过一半的数字
    题目链接:方法一:若数组中有数字的出现次数超过数组长度的一半(绝对众数),则将该数组排序后中间位置的数一定就是该数。classSolution{public:intmoreThanHalfNum_Solution(vector<int>&nums){sort(nums.begin(),nums.end());intn=nums.size();......
  • (△△△)开发一个坐标计算工具, A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动
    描述开发一个坐标计算工具,A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动,从输入字符串里面读取一些坐标,并将最终输入结果输出到输出文件里面。输入:合法坐标为A(或者D或者W或者S)+数字(两位以内)坐标之间以;分隔。非法坐标点需要进行丢弃。如AA10;......
  • string 字符串用法C++
    substr() c_str() size()/length()  empty() clear() #include<iostream>#include<cstring>#include<cstdio>#include<algorithm>#include<vector>usingnamespacestd;intmain(){stringa="abc";......
  • 如何把将字符串中的数字转换成数字
    主要采用的是库函数的方法,isdigit,stoi.isdigit可以判断单个字符是否是数字,stoi可以将多个字符(多位数,复数)转换成数字。判断数字可以结合isdigit给出对应的函数。点击查看代码boolisNumber(conststd::string&token){//Checkifthetokenisanumber(posit......