hdu 4018 Parsing URL(字符串截取)

题目

  以下引用自百度百科:

  sscanf 的相关用法

  头文件:#include<stdio.h>

1. 常见用法。


1

2

3

charbuf[512];

sscanf("123456","%s",buf);//此处buf是数组名,它的意思是将123456以%s的形式存入buf中!

printf("%s\n",buf);

结果为:123456

2. 取指定长度的字符串。如在下例中,取最大长度为4字节的字符串。


1

2

sscanf("123456","%4s",buf);

printf("%s\n",buf);

结果为:1234

3. 取到指定字符为止的字符串。如在下例中,取遇到空格为止字符串。


1

2

sscanf("123456abcdedf","%[^]",buf);

printf("%s\n",buf);

结果为:123456

4. 取仅包含指定字符集的字符串。如在下例中,取仅包含1到9和小写字母的字符串。


1

2

sscanf("123456abcdedfBCDEF","%[1-9a-z]",buf);

printf("%s\n",buf);

结果为:123456abcdedf

当输入:  sscanf("123456abcdedfBCDEF","%[1-9A-Z]",buf);


1

printf("%s\n",buf);

结果为:123456

5. 取到指定字符集为止的字符串。如在下例中,取遇到大写字母为止的字符串。


1

2

sscanf("123456abcdedfBCDEF","%[^A-Z]",buf);

printf("%s\n",buf);

结果为:123456abcdedf

6、给定一个字符串iios/[email protected],获取 / 和 @ 之间的字符串,

先将 "iios/"过滤掉,再将非‘@‘的一串内容送到buf中


1

2

sscanf("iios/[email protected]","%*[^/]/%[^@]",buf);

printf("%s\n",buf);

结果为:12DDWDFF

7、给定一个字符串“hello, world”,仅保留world。

(注意:“,”之后有一空格,%s遇空格停止,加*则是忽略第一个读到的字符串)


1

2

sscanf(“hello,world”,"%*s%s",buf);

printf("%s\n",buf);

结果为:world

%*s表示第一个匹配到的%s被过滤掉,即“hello,”被过滤了

如果没有空格则结果为NULL。

时间: 2024-08-01 22:36:22

hdu 4018 Parsing URL(字符串截取)的相关文章

php获取url字符串截取路径的文件名和扩展名

<?php //获取连接里边的id $url = 'http://www.rong123.com/cjbkscbsd/x_dfsdfs/24454_1_1.html'; function getIdByUrl($url) { $id = ''; $filename = basename($url,".html"); $id = str_replace('-', '_', $filename); if(strstr($id, '_')) { $conids = explode('_

cmd 字符串截取

@echo off set "url=www.mzwu.com" echo 1.字符串截取 echo %url:~4,4% echo %url:~4,-4% echo %url:~-8,4% echo %url:~-8,-4% echo %url:~,4% echo %url:~,-4% echo %url:~4% echo %url:~-8% echo. echo 2.字符串替换,将mzwu替换为163 echo %url:mzwu=163% pause>nul 原文地址:ht

Shell字符串截取(非常详细)

Shell 截取字符串通常有两种方式:从指定位置开始截取和从指定字符(子字符串)开始截取. 从指定位置开始截取 这种方式需要两个参数:除了指定起始位置,还需要截取长度,才能最终确定要截取的字符串. 既然需要指定起始位置,那么就涉及到计数方向的问题,到底是从字符串左边开始计数,还是从字符串右边开始计数.答案是 Shell 同时支持两种计数方式. 1) 从字符串左边开始计数 如果想从字符串的左边开始计数,那么截取字符串的具体格式如下: ${string: start :length} 其中,stri

java 字符串截取

String url="<img src="http://p1.qhimg.com/d/_hao360/weather/4.png" title="雷阵雨"> "; if(!weather_pic.equals("")) { if(weather_pic.indexOf("src")>-1) { url=url.substring(url.indexOf("src")+

istringstream字符串流,实现类似字符串截取的功能,字符串流中的put,str()将流转换成为字符串string

 1. istringstream字符串流 #include <iostream> #include <sstream> #include <string> using namespace std; struct MyStruct { string str1, str2, str3; double db; int num; char ch; }; void main() { string  mystring("china  google microsoft

Linux下实现字符串截取方法总结

Linux下实现字符串截取,大体上可以分为两种,使用命令实现截取,使用工具实现截取.具体截取方式如下: a.#截取,可以实现删除左边字符,保留右边字符 从左边第一个</>开始,删除</>及之前的所有字符 str=http://www.baidu.com/index.html echo ${str#*/}        # right first / 输出:      /www.baidu.com/index.html b.##截取,可以实现删除左边字符,保留右边字符 从最右边的&l

shell脚本中8种字符串截取方法_转自脚本之家

转自:http://www.jb51.net/article/56563.htm Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.aaa.com/123.htm. 1. # 号截取,删除左边字符,保留右边字符. echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符即删除 http://结果是 :www.aaa.com/123.htm 2. ## 号截取,删除左边字符,保留右边字符

MySQL字符串函数substring:字符串截取

MySQL 字符串截取函数:left(), right(), substring(), substring_index().还有 mid(), substr().其中,mid(), substr() 等价于 substring() 函数,substring() 的功能非常强大和灵活. 1. 字符串截取:left(str, length) mysql> select left('example.com', 3);+-------------------------+| left('example.

Shell脚本8种字符串截取方法总结

Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.aaa.com/123.htm. 1. # 号截取,删除左边字符,保留右边字符. echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符即删除 http://结果是 :www.aaa.com/123.htm 2. ## 号截取,删除左边字符,保留右边字符. echo ${var##*/} ##*/ 表示从左边开始删除最后(最右边)一个