字符串函数

提高PHP性能的实用方法+40个技巧优化您的PHP代码

荒凉一梦 提交于 2020-03-10 08:21:13
1、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的"函数"(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。 2、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。 3、$row['id'] 的速度是$row[id]的7倍。 4、echo 比 print 快,并且使用echo输出时用逗号而不是句点代替字符串连接效率更高,比如 echo $str1,$str2。 5、在执行for循环之前确定最大循环数,不要把 count/strlen/sizeof 等每次都要重复做的但结果都一样的事情放到 for 循环的条件语句中,另外最好运用foreach代替for循环。 6、及时注销那些不用的变量,尤其是大数组,对象之类的,以便释放内存。 7、require_once()代价昂贵,据测试数据来看,使用require_once比require慢3-4倍,具体的解决办法可先检查是否存在引用然后决定是都需要require。 8、include和require文件时尽量不要使用相对路径,因为使用相对路径的时候它会首先查找指定的php包含路径,然后查找当前目录,因此会检查过多路径,所以最佳选择是使用绝对路径。 9

php获取字符串长度函数strlen和mb_strlen

风格不统一 提交于 2020-03-10 04:22:23
php获取字符串长度函数strlen和mb_strlen count() - 计算数组中的单元数目,或对象中的属性个数 strlen — 获取字符串长度,一个汉字为3个字符 mb_strlen() - 获取字符串的长度 ----------- int strlen ( string $string ) 成功则返回字符串 string 的长度;如果 string 为空,则返回 0。 范例 <?php $str = 'abcdef'; echo strlen($str); // 6 $str = 'abcdef中国'; echo strlen($str); // 12 echo mb_strlen($str);//12 echo count($str);//1 $str = ' ab cd '; echo strlen($str); // 7 ?> 注意: strlen() returns the number of bytes rather than the number of characters in a string. strlen() returns NULL when executed on arrays, and an E_WARNING level error is emitted. 代码在线运行 - 在线工具 http://tool.lu/coderunner/ 来源

Python基础复习:字符串类型及操作

▼魔方 西西 提交于 2020-03-10 03:27:02
字符串类型的表示 字符串是由若干个有序字符组成的字符序列。 字符串有两种表示方法 一对单引号: '一二三' ;或者一对双引号: ''一二三'' 。仅表示单行字符串 一对三单引号可表示多行字符串: '''一二三''' 字符串的序号 正向递增序号和反向递减序号: 字符串的使用方法 使用[ ]获取字符串的一个或多个字符: 索引:返回字符串中的当个字符。<字符串>[M] "一二三"[0] 结果为’‘一’’ 切片:返回字符串中的一段字符子串。<字符串>[M:N:K]。其中M、N、K可缺失,M缺失表示 至开头 ,N缺失表示 至结尾 ,K表示步长。 ''一二三''[0:1] 结果为’‘一二’’ 字符串的特殊字符(转义符\) 转义符表达特点字符的本意。 ''这里有个双引号(\'')'' 结果为 这里有个双引号(’’) 转义符形成一些组合,表达一些不可打印的含义。 ' \b' 回退 '\n' 换行 '\r' 回车等等 https://blog.csdn.net/gezailushang/article/details/84178853 字符串操作符 操作符及使用 描述 x + y 连接两个字符串x,y n * x 将字符串x复制n次 x in s 如果x是s的子串,则返回True,反之返回False 字符串处理函数 函数及使用 描述 len(x) 返回字符串x的长度。 str(x)

python 字符串 切片

心已入冬 提交于 2020-03-09 22:01:36
####################概念######################''' int 整数 str 字符串 一般不存放大量的数据 bool 布尔值,用来判断。 True,False list 列表。存放大量数据,[]表示,里面可以放各种数据类型 tuple 元祖,只读列表 ()表示 dict 字典。 {key:value} set 集合。 去重 ''' ''' 大小写转换:*——记住 * upper() 全大写 title() 首字母大写(只要是不属于英文字母的都是分隔符) 切来切去: center(10,'*') 强行用*在原字符串左右两端拼接,拼接成十个长度 * strip() 去除前后两边的空格 lstrip() rstrip() * replace(old,new) 替换 * split() 切割(切完的结果是一个列表里面装着字符串) 注意:贴边则是有空字符串 * startswith() endswith 以什么开头 都可以进行索引的操作 * count() 计算出现的次数 * find() 查找xxx在字符串中出现的位置索引,只找第一个,找不到返回-1 * index() 查找xxx在字符串中出现的位置索引,只找第一个,找不到报错 条件判断: .isalnum 字母数字 .isdigit 数字 .isalpha 字母 .isnumeric

ORACLE基本数据类型总结

為{幸葍}努か 提交于 2020-03-09 20:09:51
ORACLE基本数据类型(亦叫内置数据类型 built-in datatypes)可以按类型分为:字符串类型、数字类型、日期类型、LOB类型、LONG RAW& RAW类型、ROWID & UROWID类型。 在讲叙字符串类型前,先要讲一下编码。字符串类型的数据可依编码方式分成数据库字符集(CHAR/VARCHAR2/CLOB/LONG)和国际字符集(NCHAR/NVARCHAR2/NCLOB)两种。数据库中的字符串数据都通过字符集将字符转换为数字后(二进制),才存储到数据块中。通过不同的编码集转换,即便是相同的字符,也可能会转换成不同的二进制编码。这也是产生乱码的原因。数据库的编码格式一般是在创建数据库时指定的。当然也可以修改数据库的编码。 查看数据库视图所包含的数据类型:SELECT * FROM DBA_TYPES WHERE OWNER IS NULL.具体细节情况参见 Oracle® Database SQL Language Quick Reference 10/11 g 或 官方文档 一 字符串类型 字符串数据类型还可以依据存储空间分为固定长度类型(CHAR/NCHAR) 和可变长度类型(VARCHAR2/NVARCHAR2)两种. 所谓固定长度:是指虽然输入的字段值小于该字段的限制长度,但是实际存储数据时,会先自动向右补足空格后,才将字段值的内容存储到数据块中

Oracle基本数据类型总结

痞子三分冷 提交于 2020-03-09 20:08:04
ORACLE基本数据类型(亦叫内置数据类型 built-in datatypes)可以按类型分为:字符串类型、数字类型、日期类型、LOB类型、LONG RAW& RAW类型、ROWID & UROWID类型。 在讲叙字符串类型前,先要讲一下编码。字符串类型的数据可依编码方式分成数据库字符集(CHAR/VARCHAR2/CLOB/LONG)和国际字符集(NCHAR/NVARCHAR2/NCLOB)两种。数据库中的字符串数据都通过字符集将字符转换为数字后(二进制),才存储到数据块中。通过不同的编码集转换,即便是相同的字符,也可能会转换成不同的二进制编码。这也是产生乱码的原因。数据库的编码格式一般是在创建数据库时指定的。当然也可以修改数据库的编码。 查看数据库视图所包含的数据类型:SELECT * FROM DBA_TYPES WHERE OWNER IS NULL.具体细节情况参见 Oracle® Database SQL Language Quick Reference 10/11 g 或 官方文档 一 字符串类型 字符串数据类型还可以依据存储空间分为固定长度类型(CHAR/NCHAR) 和可变长度类型(VARCHAR2/NVARCHAR2)两种. 所谓固定长度:是指虽然输入的字段值小于该字段的限制长度,但是实际存储数据时,会先自动向右补足空格后,才将字段值的内容存储到数据块中

ORACLE基本数据类型

五迷三道 提交于 2020-03-09 20:06:54
ORACLE基本数据类型(亦叫内置数据类型 built-in datatypes)可以按类型分为: 字符串类型、数字类型、日期类型、LOB类型、LONG RAW& RAW类型、ROWID & UROWID类型。 字符串类型的数据可依编码方式分成数据库字符集(CHAR/VARCHAR2/CLOB/LONG)和国际字符集(NCHAR/NVARCHAR2/NCLOB)两种。 数据库中的字符串数据都通过字符集将字符转换为数字后(二进制),才存储到数据块中。 通过不同的编码集转换,即便是相同的字符,也可能会转换成不同的二进制编码。 这也是产生乱码的原因。数据库的编码格式一般是在创建数据库时指定的。当然也可以修改数据库的编码。 查看数据库视图所包含的数据类型:SELECT * FROM DBA_TYPES WHERE OWNER IS NULL. 一 字符串类型 字符串数据类型还可以依据存储空间分为固定长度类型(CHAR/NCHAR) 和可变长度类型(VARCHAR2/NVARCHAR2)两种. 所谓固定长度:是指虽然输入的字段值小于该字段的限制长度, 但是实际存储数据时,会先自动向右补足空格后,才将字段值的内容存储到数据块中。 这种方式虽然比较浪费空间,但是存储效率较可变长度类型要好。同时还能减少数据行迁移情况发生。 所谓可变长度:是指当输入的字段值小于该字段的限制长度时

Oracle基本数据类型总结

让人想犯罪 __ 提交于 2020-03-09 20:06:17
此博文参考:https://www.cnblogs.com/HDK2016/p/7071708.html ORACLE基本数据类型(亦叫内置数据类型 built-in datatypes)可以按类型分为:字符串类型、数字类型、日期类型、LOB类型、LONG RAW& RAW类型、ROWID & UROWID类型。 在讲叙字符串类型前,先要讲一下编码。字符串类型的数据可依编码方式分成数据库字符集(CHAR/VARCHAR2/CLOB/LONG)和国际字符集(NCHAR/NVARCHAR2/NCLOB)两种。数据库中的字符串数据都通过字符集将字符转换为数字后(二进制),才存储到数据块中。通过不同的编码集转换,即便是相同的字符,也可能会转换成不同的二进制编码。这也是产生乱码的原因。数据库的编码格式一般是在创建数据库时指定的。当然也可以修改数据库的编码。 查看数据库视图所包含的数据类型:SELECT * FROM DBA_TYPES WHERE OWNER IS NULL. 一 字符串类型 字符串数据类型还可以依据存储空间分为固定长度类型(CHAR/NCHAR) 和可变长度类型(VARCHAR2/NVARCHAR2)两种. 所谓固定长度:是指虽然输入的字段值小于该字段的限制长度,但是实际存储数据时,会先自动向右补足空格后,才将字段值的内容存储到数据块中。这种方式虽然比较浪费空间

python/pandas 正则表达式 re模块

风格不统一 提交于 2020-03-09 17:44:56
目录 正则解说 中文字符集 re模块常用方法 1、正则解说 数量词的贪婪模式与非贪婪模式   正则表达式通常用于在文本中查找匹配的字符串。Python里数量词默认是贪婪的(在少数语言里也可能是默认非贪婪),总是尝试匹配尽可能多的字符;非贪婪的则相反,总是尝试匹配尽可能少的字符。例如:正则表达式"ab*"如果用于查找"abbbc",将找到"abbb"。而如果使用非贪婪的数量词"ab*?",将找到"a"。 一般字符、字符集和转义字符 一般字符 完全匹配字符 abc abc \ 转义字符 \. . . 匹配除换行符\n以外的所有字符 . q, 1, +, ...... [] 匹配字符集中任意字符 [abc] a, b, c \s 匹配空白字符,即[\n\t\f\r...] a\sb a b, a b, ...... \S 匹配非空白字符 a\Sb ab, a4b, asb, ...... \w 匹配单词字符,即[a-zA-Z0-9] a\wc abc, a8c, ...... \W 匹配非单词字符,即[^a-zA-Z0-9] a\Wc a-c, a?c, ...... \d 匹配数字 a\dc a3c, ...... \D 匹配非数字 a\Dc adc, a-c, ...... 限定匹配次数 * 匹配前一个字符0到无限次 ab*c ac, abc, abbc, ...... +

python之正则表达式

六眼飞鱼酱① 提交于 2020-03-09 16:45:52
正则表达式 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。 正则表达式是用来匹配字符串非常强大的工具,在其他编程语言中同样有正则表达式的概念,Python同样不例外,利用了正则表达式,我们想要从返回的页面内容提取出我们想要的内容就易如反掌了。 正则表达式的大致匹配过程是: 1.依次拿出表达式和文本中的字符比较, 2.如果每一个字符都能匹配,则匹配成功;一旦有匹配不成功的字符则匹配失败。 3.如果表达式中有量词或边界,这个过程会稍微有一些不同。 符号 说明 实例 . 表示任意字符,如果说指定了 DOTALL 的标识,就表示包括新行在内的所有字符。 'abc' >>>'a.c' >>>结果为:'abc' ^ 表示字符串开头。 'abc' >>>'^abc' >>>结果为:'abc' $ 表示字符串结尾。 'abc' >>>'abc$' >>>结果为:'abc' *, +, ? '*'表示匹配前一个字符重复 0 次到无限次,'+'表示匹配前一个字符重复 1次到无限次,'?'表示匹配前一个字符重复 0 次到1次 'abcccd' >>>'abc*' >>>结果为:'abccc' 'abcccd' >>>'abc+' >>>结果为:'abccc' 'abcccd' >>>