scanf与正则表达式的搭配及应用

正则其实我也学的不咋地,只会一点皮毛,正则最大的作用就是当输入流是一个字符串,我们能在输入的时候就滤掉无用信息,省去后期提取数值的步骤。

正则的语法我怕误人子弟,嘿嘿,等我彻底理解之后再写

使用方法 :

  • scanf(“%ns”, str);

    表示读取长度为n的字符串

    输入:123456

    输出str:123 ( 以scanf(“%3s”, str);为例 )

  • scanf(“%[a-z]”, str);

    表示读取a-z的小写字母,出现非a-z的小写字母,立即停止读取。

    输入:abcd123

    输出str:abcd

  • scanf(“%*[a-z]%s”, str);

    %*[ ]表示过滤掉满足括号内条件的字符串   %[ ]表示读取

    输入:abcd123

    输出str:123

  • scanf(“%[^0-9]”, str);

    ^表示非,^0-9表示非0-9的一切字符,因此是遇到0-9就立即停止读取。

    输入:abcd123

    输出str:abcd

PS:%[^\n] 表示 读取回车符以前的所有字符,常用于读取含空格的字符串。%[^ ] 表示 读取空格符以前的所有字符。

  • scanf(“%*[^\n]%d”, &num);

    表示过滤掉回车以前所有的字符,并将回车符的下一个数字赋给num。

    输入:abcd\n12

    输出num:12

PS:%*[^ ]表示过滤空格以前的所有字符

我个人觉得(>人<;)这是所有的应用了

scanf与正则表达式的搭配及应用的更多相关文章

  1. python基础之正则表达式

    正则表达式语法 正则表达式 (或 RE) 指定一组字符串匹配它;在此模块中的功能让您检查一下,如果一个特定的字符串匹配给定的正则表达式 (或给定的正则表达式匹配特定的字符串,可归结为同一件事). 正则 ...

  2. python 正则表达式操作

    正则表达式操作  本模块提供了类似于Perl的正则表达式匹配操作.要匹配的模式和字符串可以是Unicode字符串以及8位字符串. 正则表达式使用反斜杠字符('\')来表示特殊的形式或者来允许使用特殊的 ...

  3. python re正则模块

    re 正则表达式操作  本模块提供了类似于Perl的正则表达式匹配操作.要匹配的模式和字符串可以是Unicode字符串以及8位字符串. 正则表达式使用反斜杠字符('\')来表示特殊的形式或者来允许使用 ...

  4. python re的使用

    re 正则表达式操作  本模块提供了类似于Perl的正则表达式匹配操作.要匹配的模式和字符串可以是Unicode字符串以及8位字符串. 正则表达式使用反斜杠字符('\')来表示特殊的形式或者来允许使用 ...

  5. scanf正则表达式

    #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> void main() { ] = ...

  6. 在C语言中利用PCRE实现正则表达式

    1. PCRE简介 2. 正则表达式定义 3. PCRE正则表达式的定义 4. PCRE的函数简介 5. 使用PCRE在C语言中实现正则表达式的解析 6. PCRE函数在C语言中的使用小例子 1. P ...

  7. [网络流24题] 搭配飞行员(cogs 14)

    [问题描述]     飞行大队有若干个来自各地的驾驶员,专门驾驶一种型号的飞机,这种飞机每架有两个驾驶员,需一个正驾驶员和一个副驾驶员.由于种种原因,例如相互配合的问题,有些驾驶员不能在同一架飞机上飞 ...

  8. COGS14. [网络流24题] 搭配飞行员

    [问题描述]     飞行大队有若干个来自各地的驾驶员,专门驾驶一种型号的飞机,这种飞机每架有两个驾驶员,需一个正驾驶员和一个副驾驶员.由于种种原因,例如相互配合的问题,有些驾驶员不能在同一架飞机上飞 ...

  9. 验证控件jQuery Validation Engine简单自定义正则表达式

    首先上控件的地址http://code.ciaoca.com/jquery/validation-engine/ 具体使用方式网站里说的很清楚,我写这篇文章主要是用于记录如何自己添加自定义正则表达式, ...

随机推荐

  1. nginx 书籍

    1.<实战nginx> 2.<深入理解nginx> 3.nginx开发从入门到精通 http://tengine.taobao.org/book/ 4.Nginx源码学习,配置 ...

  2. redhat 7.6 find 命令

    1.按名字查找 find  ./    -name  filename    //精确查找 ,./ 代表当前目录   -name 查询名称 filename具体文件名称 find  ./    -na ...

  3. 阿里云服务器Ubantu16.04升级python3.6

    从ppa上下载下载python3.6 sudo apt-get install software-properties-common#使用 “add-apt-repository” 脚本添加 ppa ...

  4. Tensorflow机器学习入门——MINIST数据集识别(卷积神经网络)

    #自动下载并加载数据 from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_s ...

  5. 使用CSS3动画属性实现各种旋转跳跃

    Transform字面上就是变形,改变的意思.在CSS3中transform主要包括以下几种:旋转rotate.扭曲skew.缩放scale和移动translate以及矩阵变形matrix. tran ...

  6. [多校联考]SLON!!!

    题目描述 $SLON$是一个调皮的学生,为了让他静下心来,老师给他出了一道数学题:给定表达式$A$,$A$中含有变量$x$和$+,-,*,(,)$这些符号,括号成对出现,一个算术运算符均对应两个操作数 ...

  7. pycharm不能安装第三方库,错误代码Non-zero exit code (1) 的解决办法

    pycharm版本 2019.3 大致意思是安装失败,建议的解决方案:尝试从系统终端运行此命令.确保使用正确的'pip'版本,该版本已为位于'C:\ Users \ G \ Desktoplgianf ...

  8. pytest+allure(pytest-allure-adaptor基于这个插件)设计定制化报告

    一:环境准备 1.python3.6 2.windows环境 3.pycharm 4.pytest-allure-adaptor 5.allure2.8.0 6.java1.8 pytest-allu ...

  9. C# 增加时间的三个方法

    第一个是使用方法形式的实例方法: incrementer.CountedADozen += IncrementDozensCount;  //方法引用形式 第二个是使用方法形式的静态方法: incre ...

  10. Vue 项目开发

    目录 Vue 项目开发 项目目录结构解析 入口文件 main.js (项目入口) 根组件 app.vue index.html 文件入口 router 路由 components 子组件 项目初始化 ...