Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >用正则表达式完成简单公式的替换计算

用正则表达式完成简单公式的替换计算

作者头像
用户1075292
发布于 2018-01-23 03:12:31
发布于 2018-01-23 03:12:31
1.5K00
代码可运行
举报
文章被收录于专栏:听雨堂听雨堂
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//用正则表达式完成替换计算
            //检验
            if(Common.GetMatchStr(this.sumitem,@"\w+([+\-*/]\w+)*").Length!=sumitem.Length)
                return -1; 

            string op=Common.GetMatchStr(sumitem,@"^\w+");
            double ret=Cvt(op);

            while(op.Length !=sumitem.Length )    //
            {
                string oper=sumitem.Substring(op.Length,1);
                sumitem=sumitem.Substring(op.Length+1);
                op=Common.GetMatchStr(sumitem,@"^\w+");
                double opval=Cvt(op);

                switch(oper)
                {
                    case "+":
                        ret+=opval;
                        break;
                    case "-":
                        ret-=opval;
                        break;
                    case "*":
                        ret*=opval;
                        break;
                    case "/":
                        ret/=opval;
                        break;
                }
            }

暂时不支持运算符的优先级和括号。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2006-07-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
正则表达式总结
一、元字符 . 匹配除换行符以外的任意字符 \w 匹配单词(字母、数字、下划线、汉字) \s 匹配任意空白符(空格、制表符tab、换行符、中文全角空格) \d 匹配数字 \b 匹配单词的开始或结束,只是一个位置 ^ 匹配字符串的开始 $ 匹配字符串的结束 \b:单词分界符,匹配一个位置(单词开头或结尾),位置处单词结束空格、标点符等。其实\b匹配位置为:其前一个字符和后一个字符不全是\w。 eg. \bhi\b.*\bLucy\b匹配hi后不远跟一个Lucy。 *:指定前面的字符可以重复n次匹配。则.*表
机器学习AI算法工程
2018/03/14
8910
正则表达式大全
正则表达式中的特殊字符 字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词的边界。 -或- 对正则表达式功能字符的还原,如"*"匹配它前面元字符0次或多次,/a*/将匹配a,aa,aaa,加了"\"后,/a\*/将只匹配"a*"。 ^ 匹配一个输入或一行的开头,/^a/匹配"an A",而不匹配"An a" $ 匹配一个输入或一行的结尾,/a$/匹配"An a",而不匹配"an A" * 匹配前面元字符0次或多次,/b
Hongten
2018/09/18
4.7K0
Perl正则表达式(2) – 用正则表达式进行匹配
到目前为止,我们都是讲正则表达式的内容写在一对斜线内,如/fred/。但其实这是 m// 的简写,其中m代表match,和之前看到的 qw// 类似,我么可以自行选择用于保卫内容的一堆字符作为边界,所以上面这个例子可以改写为m{fred},m[fred],m!fred!等。
全栈程序员站长
2022/08/31
2.2K0
简单的正则表达式入门
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为 regex、regexp 或 RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
王图思睿
2021/06/16
1K0
javascript 正则表达式
jack.yang
2025/04/05
850
JavaScript 正则表达式
老猫-Leo
2023/12/11
1930
Java中使用正则表达式
Java语言中的正则表达式匹配功能主要是通过java.util.regex.Matcher类和以下这些方法实现的。
码客说
2023/01/13
9450
Java中使用正则表达式
1 认识正则表达式
正则表达式(Regular Expression,简称regexp)是一种描述字符串结构的语法规则。
张哥编程
2024/12/13
1570
22 Java 正则表达式
正则表达式(regular expression)用于指定字符串的模式,你可以在任何需要定位匹配某种特定模式的字符串的情况下使用正则表达式。 正则表达式语法 正则表达式语法(续) 表1-9 预定义的字符类名字 大部分字符都可以与它们自身匹配 .符号可以匹配任何字符(有可能不包括行终止符,这取决于标志的设置)。 使用 \ 作为转义字符,例如,\. 匹配句号而 \\ 匹配反斜线。 ^ 和 $ 分别匹配一行的开头和结尾。 如果 X 和 Y 是正则表达式,那么 XY 表示“任何 X 的匹配后面跟随
acc8226
2022/05/17
4560
22 Java 正则表达式
正则表达式
正则表达式( Regular Expression )是用于匹配字符串中字符组合的模式。在JavaScript中,正则表达式也是对象。
星辰_大海
2020/10/26
9840
正则表达式
从0到1打造正则表达式执行引擎(一) 正则表达式转NFA
今天是五一假期第一天,这里先给大家拜个晚 咳咳!!祝大家五一快乐,我这里给大家奉上一篇硬核教程。首先声明,这篇文章不是教你如何写正则表达式,而是教你写一个能执行正则表达式的 执行引擎。 网上教你写正则表达式的文章、教程很多,但教你写引擎的并不多。很多人认为我就是用用而已,没必要理解那么深,但知道原理是在修炼内功,正则表达式底层原理并不单单是用在这,而是出现在计算机领域的各个角落。理解原理可以让你以后写字符串匹配时正则表达式能够信手拈来,理解原理也是触类旁通的基础。废话不多说,直接开始正式内容。
全栈程序员站长
2022/09/09
8810
从0到1打造正则表达式执行引擎(一) 正则表达式转NFA
js 怎么使用正则表达式-JavaScript 正则表达式
  i:ignore case 忽略大小写,默认大小写敏感:ignore case 忽略大小写,默认大小写敏感
宜轩
2022/12/29
2.9K0
常用正则表达式
一, 1.^\d+$    //匹配非负整数(正整数 + 0) ---^:以数字开头 +:之前紧邻出现的一次或多次 2.[0-9]*[1-9][0-9]*$    //匹配正整数 3.^((-\d
用户1197315
2018/01/22
3K0
正则表达式构造
正则表达式是正则表达式引擎尝试匹配输入文本的一种模式。 模式由一个或多个字符文本、运算符或构造组成。
卡尔曼和玻尔兹曼谁曼
2019/01/25
8620
正则表达式介绍与使用
正则表达式(Regular Expression)描述字符串结构模式的形式化表达方法,正则(Regex)表达式处理的对象的字符串或者抽象地说是一个对象序列(计算机体系的本质数据结构) 正则表达式是一种文本模式包括普通字符(例如a 到 z 之间的字母)和特殊字符(称为”元字符”),用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”;
全栈工程师修炼指南
2020/10/23
1.3K0
正则表达式介绍与使用
正则表达式学习笔记
正则表达式 1. 使用正则 创建正则表达式有两种方式,一种是以字面量方式创建,另一种是使用RegExp构造函数来创建。 var expression = / pattern / flags; var expression = new RegExp( pattern / flags ); var expression = new RegExp( patternStr, flags ); // example var regexp = /regexp/g; var regexp = new RegExp('r
糊糊糊糊糊了
2018/05/09
1.4K0
Python的正则表达式_python正则表达式例子
https://github.com/ziishaned/learn-regex/ https://regex101.com/ 在线练习
全栈程序员站长
2022/09/30
6820
RegExp (正则表达式)
# 编写正则表达式 创建方式有两种 // 字面量创建方式 let reg1 = /\d+/; // 构造函数 参数:元字符字符串;修饰符字符串 let reg2 = new RegExp("\\d+
Cellinlab
2023/05/17
3470
一个常用的正则表达验证类
很早以前写的一个正则表达式验证工具类,包含了一些常见的校验和支持自定义的正则表达式匹配,可以选择完全匹配,也可以获取所有匹配项。曾用它仿造Eclispe下的正则表达式插件写过一个工具。因为最近突然有几个朋友都在问这方面的问题,干脆就把代码贴出来好了。
Java架构师必看
2021/03/22
7910
正则表达式
正则表达式,全称“Regular Expression”,在代码中常简写为regex、regexp或RE。正则表达式,就是用某种模式去匹配一类字符串的公式
十月梦想
2018/08/29
9900
相关推荐
正则表达式总结
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验