字符串 | 脚本学习

字符串撰写的日志

python 字符串使用总结

1.python 字符串通常有单引号(’…’)、双引号(”…”)、三引号(”"”…”"”)或(”’…”’)包围,三引 号包含的字符串可由多行组成,一般可表示大段的叙述性字符串。在使用时基本没有差别,但双引号和三引号(”"”…”"”)中可以包含单引号,三引号 (”’…”’)可以包含双引号,而不需要转义。

2.用(\)对特殊字符转义,如(\)、(’)、(”)。

3.常用字符串函数

(1) str.count() //返回该字符串中某个子串出现的次数

(2) str.find()   //返回某个子串出现在该字符串的起始位置

(3) str.lower() //将该字符串全部转化为小写

(4) str.upper() //转为大写

(5) str.split() //分割字符串,返回字串串列表,默认以空格分割

(6) len(str)     //返回字符串长度

例如:

>>> str = ‘Hello, world’

>>> str.count(‘o’)

>>> 2

>>> str.find(‘lo’)

>>> 3

>>> str.lower()

>>> ‘hello, world’

>>> str.upper()

>>> ‘HELLO, WORLD’

>>> str.split()

>>> ['Hello,', 'world']

>>> str.split(‘,’)

>>> ['Hello', ' world']

>>> len(str)

>>> 13

>>> str

>>> ‘Hello, world’

以上所有操作都不会改变字符串本身!

4.字符串与数字相互转换

import string

string.atoi(str[,base]) //base为可选参数,表示将字符转换成的进制类型

数字转换成字符串可简单了,直接用str()

5.字符与ASCII转换

char->ascii ord()

ascii->char chr()

Python字符串操作

1.复制字符串

#strcpy(sStr1,sStr2)

sStr1 = ’strcpy’

sStr2 = sStr1

sStr1 = ’strcpy2′

print sStr2

2.连接字符串

#strcat(sStr1,sStr2)

sStr1 = ’strcat’

sStr2 = ‘append’

sStr1 += sStr2

print sStr1

3.查找字符

#strchr(sStr1,sStr2)

sStr1 = ’strchr’

sStr2 = ‘r’

nPos = sStr1.index(sStr2)

print nPos

4.比较字符串

#strcmp(sStr1,sStr2)

sStr1 = ’strchr’

sStr2 = ’strch’

print cmp(sStr1,sStr2)

5.扫描字符串是否包含指定的字符

#strspn(sStr1,sStr2)

sStr1 = ‘12345678′

sStr2 = ‘456′

#sStr1 and chars both in sStr1 and sStr2

print len(sStr1 and sStr2)

6.字符串长度

#strlen(sStr1)

sStr1 = ’strlen’

print len(sStr1)

7.将字符串中的小写字符转换为大写字符

#strlwr(sStr1)

sStr1 = ‘JCstrlwr’

sStr1 = sStr1.upper()

print sStr1

8.追加指定长度的字符串

#strncat(sStr1,sStr2,n)

sStr1 = ‘12345′

sStr2 = ‘abcdef’

n = 3

sStr1 += sStr2[0:n]

print sStr1

9.字符串指定长度比较

#strncmp(sStr1,sStr2,n)

sStr1 = ‘12345′

sStr2 = ‘123bc’

n = 3

print cmp(sStr1[0:n],sStr2[0:n])

10.复制指定长度的字符

#strncpy(sStr1,sStr2,n)

sStr1 = ”

sStr2 = ‘12345′

n = 3

sStr1 = sStr2[0:n]

print sStr1

11.字符串比较,不区分大小写

#stricmp(sStr1,sStr2)

sStr1 = ‘abcefg’

sStr2 = ‘ABCEFG’

print cmp(sStr1.upper(),sStr2.upper())

12.将字符串前n个字符替换为指定的字符

#strnset(sStr1,ch,n)

sStr1 = ‘12345′

ch = ‘r’

n = 3

sStr1 = n * ch + sStr1[3:]

print sStr1

13.扫描字符串

#strpbrk(sStr1,sStr2)

sStr1 = ‘cekjgdklab’

sStr2 = ‘gka’

nPos = -1

for c in sStr1:

if c in sStr2:

nPos = sStr1.index(c)

break

print nPos

14.翻转字符串

#strrev(sStr1)

sStr1 = ‘abcdefg’

sStr1 = sStr1[::-1]

print sStr1

15.查找字符串

#strstr(sStr1,sStr2)

sStr1 = ‘abcdefg’

sStr2 = ‘cde’

print sStr1.find(sStr2)

16.分割字符串

#strtok(sStr1,sStr2)

sStr1 = ‘ab,cde,fgh,ijk’

sStr2 = ‘,’

sStr1 = sStr1[sStr1.find(sStr2) + 1:]

print sStr1

转载自:缥缈的云[http://www.leexiang.info]

本文链接: http://www.leexiang.info/archives/294

PHP 中文乱码的常见解决方法总结

    本文介绍了PHP中文乱码的常见解决方法。要解决PHP中文乱码最好最快的解决办法就是,页面申明的编码与数据库内部编码一致。
    PHP中文乱码是PHP开发中的常见问题之一。PHP中文乱码有时发生在网页本身,有些产生在于MySQL交互的过程中,有时与操作系统有关。下面进行一番总结。

    一.首先是PHP网页的编码

    1. php文件本身的编码与网页的编码应匹配

    a. 如果欲使用gb2312编码,那么php要输出头:header(“Content-Type: text/html; charset=gb2312″),静态页面添加<meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″>,所有文件的编码格式为ANSI,可用记事本打开,另存为选择编码为ANSI,覆盖源文件。
    More >

python String和PyQt QString的区别

以下在python2.5和PyQt4.4.6 for python2.5环境下讨论。

1.在python中有两种与字符有关的类型:string object和Unicode object。

    平时进行输入输出的一般都用string object,当需要显示一些特殊字符或者中文等文字时候,需要转换为Unicode编码。在PyQt中也有两种字符类型与上面两者对应:QByteArray和QString,主要是使用QString操作数据。
More >

PHP 换行符转成<br/>: nl2br()函数

nl2br()函数可将字符串\n中的换行符转成HTML的换行符号<br/>。
常用于在程序处理完字符串后将结果输出到网页中。
由于HTML中不识别程序语言中常用的\n, 所以得用nl2br()进行替换。

<?php
$str = "Hello world\n See you later";

echo $str."<br/>";
echo nl2br($str);
?>

输出结果为:

Hello world See you later
Hello world
See you later

PHP 字符串去除空格函数trim

trim(), ltrim(), rtrim()

在PHP获取表单的信息时,我们通常会对表单中的字符串进行处理,其中最基本的处理就是去除字符串两边的空格。
下面将介绍trim()系统函数的语法和使用:

string trim(string $str [, string $charlist])

trim()函数对输入的字符串进行去除开始位置和结束位置的空格(其实不只是空格)。
如果不设置第二个参数,trim()函数将会去除以下字符:
” ” : 空格;
“\t”: 制表符;
“\n”: 换行符;
“\r”: 回车符;
“\0″: 空字符;
“\x0B”: 垂直制表符;

如果设置第二个参数,trim()函数将只去除第二个参数中的字符集,而不会再去除上面默认的字符集。

<?php
$str = "  hello world   ";
$str_trim = trim($str);
echo "$str<br />$str_trim";
?>

看一下输出结果:

hello world
hello world

怎么是一样的呢?第一行的空格怎么不见了。呵呵。我们在看一下网页的HTML代码吧:

  hello world   hello world

空格出现了吧!空格不见是因为浏览器显示时自动进行不显示多除的空格。

<?php
$str = "Left hello world Right ";
$str_trim = trim($str,"eftL");
echo "$str<br />$str_trim";
?>

输出结果为:

Left hello world Right
hello world Right

我们将左则和eftL字符相关的都去除了,你可能注意到了,右侧的Right中的”t”也在第二个参数中,为什么没去除。仔细看一下$str最后一个字符,其实是空格。因为空格(最右侧)没有去除(在HTML中能看见),所以”t”(右侧倒数第二)将不会处理。这同时说明函数第二个参数会覆盖trim()的默认字符集。

最后说一下ltrim()和rtrim()函数:
ltrim()函数只处理字符串的左侧;
rtrim()函数只处理字符串的右侧;


原创文章,如转载,请注明:转载自脚本学习 [ http://www.scriptlearn.com ]

一步一步学习PHP(7) — 字符串

1. 字符串的表现形式
在PHP中,字符串有三种表现形式:单引号,双引号,以及heredoc。
PHP手册建议,在一般情况下,尽量使用单引号的字符串。如果需要转义变量,才使用双引号的字符串。如果需要多行显示,才使用heredoc。
More >

PHP函数str_replace在字符串替换操作中的作用

对于PHP程序员来说,在实际的代码编程中,经常会与到要替换字符串的操作,在这一操作的过程中,我们将会用到PHP函数str_replace。今天我们就来具体了解下个函数的具体功能。

这段时间在看《PHP和MySQL Web开发》一书看到str_replace讲解,一段小提示写到:可以为str_replace的三个都使用数组传入,但讲解比较简单,于是决定自己的试验一下该函数在各个参数传入数组时的执行结果。
More >

python 连接字符串举例

join 方法用于连接字符串数组,使用 % 连接多个变量下面看例子:

join 方法用于连接字符串数组:

s = ['a', 'b', 'c', 'd']
print ''.join(s)
print '-'.join(s)

输出结果:
abcd
a-b-c-d

使用 % 连接多个变量:

s = ['a', 'b', 'c', 'd']
a = 'hello'
b = 'python'
c = 1
print '%s %s %s %s' % (a, b, c, s)

输出结果:
hello python 1 ['a', 'b', 'c', 'd']

PHP截取中文字符串

以下代码试用于GB2312编码,截取中文字符串是PHP中一个头疼的问题,解决方法是根据值是否大于等于128来判断是否是双字节字符,以避免出现乱码的情况。但中英文混合、特殊符号等问题总是存在,现在写一个比较全面的,仅供参考:
程序说明:
    1. len 参数以中文字符为标准,1len等于2个英文字符,为了形式上好看些
    2. 如果将magic参数设为false,则中文和英文同等看待,取绝对的字符数
    3. 特别适用于用htmlspecialchars()进行过编码的字符串
    4. 能正确处理GB2312中实体字符模式
More >

shell字符串处理

计算字符串长度

%x="abcd"

#方法一
%expr length $x
4

#方法二
%echo ${#x}
4

#方法三
%expr "$x" : ".*"
4

查找子串
More >

google reader 哪吒
QQ邮箱 my yahoo
抓虾 鲜果