abcdefg

python的正则表达式

…衆ロ難τιáo~ 提交于 2020-01-25 23:39:40
1.re.findall("a","ab")   a:匹配规则 ab:要匹配的内容   结果以列表的形式返回:['a'] 2.元字符:".","^","$","*","+","?","{ }","[ ]","|","( )","\"   ".":匹配除换行符“\n”以外任何字符; import re A = re.findall('ab.d',"abcdefg") B = re.findall('ab.e',"abcdefg") print(A) #['abcd'] print(B) #[]   "^":匹配字符串开头      import re A = re.findall('^ab',"abcdefg") B = re.findall('^bc',"abcdefg") print(A) #['ab'] print(B) #[]   "$":匹配字符串结尾 import re A = re.findall('ab$',"abcdefg") B = re.findall('fg$',"abcdefg") print(A) #[] print(B) #['fg']   "*":匹配前一个字符0次或无限次 import re A = re.findall('ab*',"abbdefg") B = re.findall('ab*',"acdefg") print(A) #['abb']

substring详细用法,截取不行就用替换

∥☆過路亽.° 提交于 2020-01-08 09:19:23
SUBSTRING 返回字符、binary、text 或 image 表达式的一部分。有关可与该函数一起使用的有效 Microsoft® SQL Server™ 数据类型的更多信息,请参见数据类型。 语法 SUBSTRING ( expression , start , length ) 参数 expression 是字符串、二进制字符串、text、image、列或包含列的表达式。不要使用包含聚合函数的表达式。 start 是一个整数,指定子串的开始位置。 length 是一个整数,指定子串的长度(要返回的字符数或字节数)。 substring() ——任意位置取子串 left() right() ——左右两端取子串 ltrim() rtrim() ——截断空格,没有trim()。 charindex() patindex() ——查子串在母串中的位置,没有返回0。区别:patindex支持通配符,charindex不支持。 函数功效: 字符串截取函数,只限单字节字符使用(对于中文的截取时遇上奇数长度是会出现乱码,需另行处理),本函数可截取字符串指定范围内的字符。 应用范围: 标题、内容截取 函数格式: string substr ( string string, int start [, int length]) 参数1:处理字符串 参数2:截取的起始位置(第一个字符是从0开始)

Change one character in a string?

匿名 (未验证) 提交于 2019-12-03 02:28:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 由 翻译 强力驱动 问题: What is the easiest way in Python to replace a character in a string like: text = "abcdefg" ; text [ 1 ] = "Z" ; ^ 回答1: Don't modify strings. Work with them as lists; turn them into strings only when needed. >>> s = list ( "Hello zorld" ) >>> s [ 'H' , 'e' , 'l' , 'l' , 'o' , ' ' , 'z' , 'o' , 'r' , 'l' , 'd' ] >>> s [ 6 ] = 'W' >>> s [ 'H' , 'e' , 'l' , 'l' , 'o' , ' ' , 'W' , 'o' , 'r' , 'l' , 'd' ] >>> "" . join ( s ) 'Hello World' Python strings are immutable (i.e. they can't be modified). There are a lot of reasons for this.

函数练习

一个人想着一个人 提交于 2019-12-01 20:36:01
1.把一个字典扁平化,源字典为 {'a':{'b':1,'c':2}, 'd':{'e':3,'f':{'g':4}}} 。 上面字典的扁平化可以转化为下面的字典:{“a.c”:2,"d.e":3,"d.f.g":4,"a.b":1} source = {'a':{'b':1,'c':2}, 'd':{'e':3,'f':{'g':4}}} target = {} #recursion def flatmap(src,prefix = ""): for k,v in src.items(): if isinstance(v,(list,tuple,set,dict)): flatmap(v,prefix=prefix+k+".")#递归调用 else: target[prefix+k]=v flatmap(source) print(target) 结果为: {'a.b': 1, 'a.c': 2, 'd.e': 3, 'd.f.g': 4} 像一般这样的函数都会生成一个新的字典,上面的代码借用了外部的变量,破坏了函数的封装,因此可以对上面的函数稍微改造下,dest字典可以由内部来创建,当然也可以外部提供。 source = {'a':{'b':1,'c':2}, 'd':{'e':3,'f':{'g':4}}} #recursion def flatmap(src,dest