广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >利用正则表达式匹配浮点型数据
  • 459
分享到

利用正则表达式匹配浮点型数据

2024-04-02 19:04:59 459人浏览 泡泡鱼
摘要

目录前言:正则表达式Java代码附:正则表达式(同时匹配整型数和浮点数)总结前言: 在开发中我们常常会使用到正则表达式,但很奇怪的是,每次你在使用正则表达式的时候你都发现你不会写,不

前言:

开发中我们常常会使用到正则表达式,但很奇怪的是,每次你在使用正则表达式的时候你都发现你不会写,不知道语法,可能你大概还记得一部分,但很模糊,对于正则表达式的语法真心记不住,别的程序猿是不是我不清楚,但我是就是这样子,每次写都会发现记不住了,然后又去网上查找资料,又进行一次学习,慢慢的发现基本语法你又会了,但实际上你还是不会,可能是没有完全明白或者在实际开发中没有长期的使用导致,今天写这篇文章纯属唠嗑,其余的差不多都是复制粘贴了,另外说一下最近这一次翻开正则表达式去匹配浮点型数据做的一点思路,这一点和之前的是不一样的。以前写的正则去匹配浮点型的时候会发现无法完全正确的匹配,找了网上不少的高手或者菜鸟教程直接抄过来使用,发现其实都是有问题的,问题出在哪儿呢,大部分出现的问题都是在处理"0"和".“的情况下。你可能忘记了,我可以帮大家会议一下,当然大部分还是对的,但是如果出现以0开头的时候,你会发现,我可以输入n个0开头也能匹配出来,虽然有点会把连续的多个0开头的部分丢掉,但还是让人感觉匹配的不是很好,我有强迫症,这种匹配我认为是不正确的,另外就是”.",当你使用"."的时候,你会发现"xxxx."像这种格式的都能匹配,这是在逗我吗,难道这也算正确的,这种情况我会直接否认掉,但是在以往的开发中,我为了完后任务,当然也就不管了,没那么严格,对于上面出现的这几种情况我都心有不甘的默认了,毕竟开发需要的时间不能都花在搞这种问题上,时间那么有限,所以我当然就默许了这种问题的存在。今天呢又来搞了搞正则,还是相同的东西,我想自己写了,所以自己开搞了,废话有点多了,接下来就进入主题吧。

正则表达式

1、非负浮点型:(^[1-9]\d*\.\d+$|^0\.\d+$|^[1-9]\d*$|^0$)

2、浮点型:(^-?[1-9]\d*\.\d+$|^-?0\.\d+$|^-?[1-9]\d*$|^0$)

上面的正则是怎么写的呢?我来讲一讲

将浮点型数据做拆分,为啥要拆分呢,因为不拆分很难实现匹配浮点型字符串的正确格式

拆分成4类

1、非0开头的浮点型(123.12)
2、0开头的浮点型(0.12)
3、非0整数型
4、0

分别正则表达式

1、^[1-9]\d*\.\d+$
2、^0\.\d+$
3、^[1-9]\d*$
4、^0$

最后将4个表达式组合到一个中就得到最终的结果

(^[1-9]\d*\.\d+$|^0\.\d+$|^[1-9]\d*$|^0$)

浮点型是存在正负数的,所以还需要给得到的正则表达式添加符号

(^-?[1-9]\d*\.\d+$|^-?0\.\d+$|^-?[1-9]\d*$|^0$)

语法解析

符号描述
^以什么开头
$以什么结尾
.匹配任意非\n的单字符
\.匹配.
+匹配一次或多次
*匹配0次或多次
?匹配0次或1次
x|y表示匹配x或者y
{n}表示匹配n次
[1-9]表示范围1至9的任意1个数字
()强制优先级,匹配括号需要在括号前加"\"
-表示负号

Java代码

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

public class RegexMatches {
	public static void main(String args[]) {
		String str = "";
		String pattern = "(^[1-9]\\d*\\.\\d+$|^0\\.\\d+$|^[1-9]\\d*$|^0$)";

		Pattern r = Pattern.compile(pattern);
		Matcher m = r.matcher(str);
		System.out.println(m.matches());
	}

}

附:正则表达式(同时匹配整型数和浮点数)

pattern="^[1-9]*[0-9]?(\.[0-9]{1,2})?$"

总结

到此这篇关于利用正则表达式匹配浮点型数据的文章就介绍到这了,更多相关正则匹配浮点型数据内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 利用正则表达式匹配浮点型数据

本文链接: https://www.lsjlt.com/news/149945.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 利用正则表达式匹配浮点型数据
    目录前言:正则表达式Java代码附:正则表达式(同时匹配整型数和浮点数)总结前言: 在开发中我们常常会使用到正则表达式,但很奇怪的是,每次你在使用正则表达式的时候你都发现你不会写,不...
    99+
    2022-11-13
  • 正则表达式怎么匹配数字
    这篇文章给大家分享的是有关正则表达式怎么匹配数字的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。高效正则表达式匹配数字实例:^[1-9]\d*$      //匹配正整数&n...
    99+
    2023-06-17
  • Python中使用正则表达式及正则表达式匹配规则详解
    目录1 导库2 使用模板3 说明4 示例5 正则表达式匹配规则1 导库 import re 2 使用模板 re_pattern = re.compile(pattern, flags...
    99+
    2023-03-22
    Python正则表达式匹配规则 Python正则表达式
  • JavaScript中怎么利用正则表达式判断匹配规则
    这篇文章将为大家详细讲解有关JavaScript中怎么利用正则表达式判断匹配规则,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。字符串是编程时涉及到的最多的一...
    99+
    2022-10-19
  • Python中怎么利用正则表达式匹配子串
    本篇文章给大家分享的是有关Python中怎么利用正则表达式匹配子串,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。获取Python正则表达式所匹配的子串(Get the part...
    99+
    2023-06-17
  • 数据库MySQL 通配符与模式匹配正则表达式
    今天一个同事说他写了一个sql语句查询没有结果,他是这样写的 SELECT * FROM Persons WHERE City&n...
    99+
    2022-10-18
  • 利用PHP正则表达式函数实现强大的数据匹配功能
    利用PHP正则表达式函数实现强大的数据匹配功能正则表达式是一种强大的数据匹配工具,能够高效地对字符串进行模式匹配。在PHP中,正则表达式函数提供了许多功能,使得数据处理和筛选变得更加灵活和方便。一、正则表达式的基本语法正则表达式由一系列字符...
    99+
    2023-11-20
    正则表达式 关键词:PHP 数据匹配
  • php怎么利用正则表达式只匹配身份证
    正则表达式是程序中常用的一种工具,它可以使用一系列的规则去匹配和修改文本。在PHP中,正则表达式的使用非常重要,主要用于对字符串的匹配,替换和提取等操作。在所有的正则表达式中,身份证号码的匹配是一道经典的题目。在PHP中,我们可以通过一系列...
    99+
    2023-05-14
    php 正则 正则表达式
  • php如何利用正则表达式只匹配身份证
    这篇文章主要介绍“php如何利用正则表达式只匹配身份证”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php如何利用正则表达式只匹配身份证”文章能帮助大家解决问题。首先,我们需要了解身份证号码的结构。...
    99+
    2023-07-05
  • Notepad++怎么使用正则表达式匹配
    今天小编给大家分享一下Notepad++怎么使用正则表达式匹配的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Notepad+...
    99+
    2023-07-06
  • Python中怎么使用正则表达式及正则表达式匹配规则是什么
    1 导库import re2 使用模板re_pattern = re.compile(pattern, flags=0) result = re.findall(re_pattern,string)3 说明参数描述pattern匹配的正则表...
    99+
    2023-05-14
    Python
  • PHP中怎么利用正则表达式实现多行匹配
    本篇文章给大家分享的是有关PHP中怎么利用正则表达式实现多行匹配,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。例如,对整个文件(尤其是多行文本)进行匹配查找。使用ereg()对...
    99+
    2023-06-17
  • PHP中的preg_match()函数用于正则表达式匹配
    PHP是一种常用的服务器端编程语言,其内置函数中包含了许多强大的功能,其中一个非常重要的函数就是preg_match()函数。该函数用于正则表达式匹配,能够帮助开发者快速有效地处理字符串数据。本文将为大家介绍preg_match()函数的具...
    99+
    2023-11-18
    PHP 正则表达式匹配 preg_match()
  • Notepad++使用正则表达式匹配的方法
    目录Notepad++ 使用正则表达式匹配一、常见匹配1、正则表达式匹配以某字符开头的这一行数据2、正则表达式匹配以a字符串开头,b字符串结尾的字符,中间不管3、只匹配纯数字的字符串...
    99+
    2023-05-15
    Notepad++正则表达式匹配 正则表达式匹配
  • 怎么用java正则表达式匹配单词
    使用Java正则表达式匹配单词,可以按照以下步骤进行:1. 创建一个正则表达式模式,用于匹配单词。例如,可以使用 \b\w+\b 来...
    99+
    2023-10-18
    java
  • C#中怎么利用正则表达式匹配相关字符串
    今天就跟大家聊聊有关C#中怎么利用正则表达式匹配相关字符串,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。使用C#中使用正则表达式System.Text.RegularExpressi...
    99+
    2023-06-17
  • perl正则表达式匹配的方法怎么用
    在Perl中,正则表达式匹配的方法是使用=~操作符。具体的语法如下: $string =~ /pattern/; 其中,$strin...
    99+
    2023-10-21
    perl
  • perl正则表达式匹配方法怎么使用
    在Perl中,可以使用`=~`操作符来匹配正则表达式。基本的语法如下:```perl$string =~ /pattern/;```...
    99+
    2023-10-07
    perl
  • Python正则表达式匹配中文用法示例
    本文实例讲述了Python正则表达式匹配中文用法。分享给大家供大家参考,具体如下: #!/usr/bin/python #-*- coding:cp936-*-#思路,将str转换成unicode,方可...
    99+
    2022-06-04
    示例 中文 正则表达式
  • jQuery中常用正则匹配表达式有哪些
    这篇文章主要介绍了jQuery中常用正则匹配表达式有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。jQuery常用正则匹配表达式//整数...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作