php中处理字符串的常见函数
编写程序的时候,经常要处理字符串,最基本就是字符串的查找,在php检测字符串中是否包含指定字符串可以使用正则,如果你对正则不了解,那么有几个函数可以为您提供方便。
1. strstr
strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。
该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。
代码如下:
|
1
2
3
4
5
6
7
|
<?php /*如手册上的举例*/ $email = 'user@example.com'; $domain = strstr($email, '@'); echo $domain; // prints @example.com?> |
2. stristr
stristr() 函数查找字符串在另一个字符串中第一次出现的位置。
如果成功,则返回字符串的其余部分(从匹配点)。如果没有找到该字符串,则返回 false。
它和strstr的使用方法完全一样.唯一的区别是stristr不区分大小写.
3. strpos
strpos函数返回boolean值.FALSE和TRUE不用多说.用 “===”进行判断.strpos在执行速度上都比以上两个函数快,另外strpos有一个参数指定判断的位置,但是默认为空.意思是判断整个字符串.缺点是对中文的支持不好.
实例1
|
1
2
3
4
5
|
if(strpos('www.jb51.net','jb51') !== false){ echo '包含jb51'; }else{ echo '不包含jb51'; } |
实例2
|
1
2
3
|
$str= 'abc';$needle= 'a';$pos = strpos($str, $needle); // 返回第一次找到改字符串的位置,这里返回为1,若查不到则返回False |
4. explode
用explode进行判断PHP判断字符串的包含代码如下:
|
1
2
3
4
5
6
7
8
9
|
function checkstr($str){ $needle ='a';//判断是否包含a这个字符 $tmparray = explode($needle,$str); if(count($tmparray)>1){ return true; } else{ return false; }} |
5、substr例如我们需要判断最后一个字符是不是制定字符
|
1
2
3
4
5
6
|
<?php/*$str1="<p>这是个winrar专用的dll然后下哦啊不错的dll文件,QlogWin32.dll</p>";if(substr($str1,-8)==".dll</p>"){echo substr($str1,0,-4);} |
6、substr_count统计“子字符串”在“原始字符串中出现的次数”
substr_count()函数本是一个小字符串在一个大字符串中出现的次数:
$number = substr_count(big_string, small_string);
正好今天需要一个查找字符串的函数,要实现判断字符串big_string是否包含字符串small_string,返回true或fasle;
查了半天手册没有找到现成的函数,于是想到可以用substr_count函数来实现代码如下:
|
1
2
3
4
5
6
7
8
9
10
11
12
|
function check_str($str, $substr){ $nums=substr_count($str,$substr); if ($nums>=1) { return true; } else { return false; }} |
php中处理字符串的常见函数的更多相关文章
- Python3中的字符串函数学习总结
这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...
- 使用strings查看二进制文件中的字符串
使用strings查看二进制文件中的字符串 今天介绍的这个小工具叫做strings,它实现功能很简单,就是找出文件内容中的可打印字符串.所谓可打印字符串的涵义是,它的组成部分都是可打印字符,并且以nu ...
- 在 case 语句中使用字符串-转
http://www.cnblogs.com/del/archive/2008/07/08/1237856.html 非常遗憾 Delphi 的 case 语句不支持字符串, 但我觉得这也可能是基于效 ...
- 使用Microsoft Roslyn提取C#和VB.NET源代码中的字符串常量
Microsoft Roslyn是微软.NET“编译器即服务(Compiler as a Service)”的主要产品,它提供了开放的编译器API,并为源代码产生.分析和重构提供了新一代的语言对象模型 ...
- SQL Server中截取字符串常用函数
SQL Server 中截取字符串常用的函数: .LEFT ( character_expression , integer_expression ) 函数说明:LEFT ( '源字符串' , '要截 ...
- 在文件夹中 的指定类型文件中 查找字符串(CodeBlocks+GCC编译,控制台程序,仅能在Windows上运行)
说明: 程序使用 io.h 中的 _findfirst 和 _findnext 函数遍历文件夹,故而程序只能在 Windows 下使用. 程序遍历当前文件夹,对其中的文件夹执行递归遍历.同时检查遍历到 ...
- 7.Java中的字符串
1.String的特性 特性一:不可变性 String s=new String("yangyun") s=s.toUpperCase(); 这里的s,s占用的空间是不一样的(地址 ...
- C# 利用占位符替换word中的字符串和添加图片
利用占位符替换word中的字符串和添加图片 ///<summary> /// 替换word模板文件内容,包括表格中内容 /// 调用如下:WordStr ...
- 使用C#程序处理PowerPoint文件中的字符串
最近, 有同事偶然发现Microsoft Office PowerPoint可以被看作是一个压缩包,然后通过WinRAR解压出来一组XML文件.解压出来的文件包括: 一个索引文件名称为:[Conte ...
随机推荐
- SpringBoot源码篇:深度分析SpringBoot如何省去web.xml
一.前言 从本博文开始,正式开启Spring及SpringBoot源码分析之旅.这可能是一个漫长的过程,因为本人之前阅读源码都是很片面的,对Spring源码没有一个系统的认识.从本文开始我会持续更新, ...
- java获得文件扩展名
java获得文件扩展名: public static void main(String[] args) throws Exception { String name = ""; S ...
- C# 多线程之线程池
线程池System.Threading.ThreadPool,可用于发送工作项.处理异步I/O.代表其它线程等待以及处理计时器.基本用法: public void Main() { ThreadPoo ...
- Web 前端安装依赖的时候遇到的问题
- sql单列合并
有一组这样的数据 1 a 10 2 b 2 4 c 5 1 a 5 在应用中,我们可能需要把出现a的数据合并显示: 1 a 10,5 sqlite上实现: SELECT ...
- 第1章 .Net应用程序体系结构
1. CLR:公共语言运行库,是每种.Net编程语言都使用的运行库 Windows 8为Windows Store应用程序引入了一个新的编程接口:Windows运行库. C# 6 具有许多小而实用的语 ...
- kubernetes发布解释型语言应用的最佳实践
说明 k8s在发布编译型语言的应用时,几乎不用多考虑,就会选择将编译好jar/war包(java语言)或者二进制文件(golang/c++)直接打到镜像当中,生成新的应用镜像,然后将镜像推到镜像仓库, ...
- 基于mllib的协同过滤实战(电影推荐)
//加载需要的包 import org.apache.spark.rdd._ import org.apache.spark.mllib.recommendation.{ALS, Rating, Ma ...
- LeetCode Search Insert Position (二分查找)
题意: 给一个升序的数组,如果target在里面存在了,返回其下标,若不存在,返回其插入后的下标. 思路: 来一个简单的二分查找就行了,注意边界. class Solution { public: i ...
- 【硬盘整理】使用UltimateDefrag将常用文件放置在磁盘最外圈
使用方法未知.软件截图如下: 官方网站(英文):http://www.disktrix.com/ 汉化破解版V3.0下载地址:http://page2.dfpan.com/fs/7com9monca3 ...