字符串函数

Python Coding Rule

喜你入骨 提交于 2020-03-02 05:45:57
介绍 这篇文档所给出的编码约定适用于在主要的Python发布版本中组成标准库的Python 代码.请查阅相关的关于在Python的C实现中C代码风格指南的描述. 这篇文档改编自Guido最初的《Python风格指南》一文. 并从《Barry's style guide》中添加了部分内容. 在有冲突的地方,Guide的风格规则应该是符合本PEP的意图 (译注:就是当有冲突时,应以Guido风格为准) 这篇PEP也许仍然尚未完成(实际上,它可能永远不会结束). 一致性的建议 愚蠢得使用一致性是无知的妖怪(A Foolish Consistency is the Hobgoblin of Little Minds) 呆板的坚持一致性是傻的没边了!-- Zoomq 在这篇风格指导中的一致性是重要的. 在一个项目内的一致性更重要. 在一个模块或函数内的一致性最重要. 但最重要的是:知道何时会不一致 -- 有时只是没有实施风格指导.当出现疑惑时, 运用你的最佳判断.看看别的例子,然后决定怎样看起来更好.并且要不耻下问! 打破一条既定规则的两个好理由: 当应用这个规则是将导致代码可读性下降,即便对某人来说,他已经习惯于按这条规则来阅读代码了. 为了和周围的代码保持一致而打破规则(也许是历史原因) -- 虽然这也是个清除其它混乱的好机会(真正的XP风格). 代码的布局 (Code lay-out)

python字符串截取与替换的例子

廉价感情. 提交于 2020-03-02 05:05:42
python字符串截取与替换的多种方法 时间:2016-03-12 20:08:14来源:网络 导读:python字符串截取与替换的多种方法,以冒号分隔的字符串的截取方法,python字符串替换方法,用字符串本身的方法,或用正则替换字符串。 转自:http://www.xfcodes.com/python/zifuchuan/9398.htm python字符串截取与替换的多种方法 一,字符串的截取 Python的字符串是有序集合,可以通过索引来提取想要获取的字符,把python的字符串作为字符串的列表好理解些。 python的字串列表有2种取值顺序: 第一种是从左到右索引默认0开始的,最大范围是字符串长度少1: 复制代码 代码示例: s = 'ilovepython' s[0]的结果是i 第二种是从右到左索引默认-1开始的,最大范围是字符串开头: 复制代码 代码示例: s = 'ilovepython' s[-1]的结果是n 上面这个是取得一个字符,如果要取得一断字符的话,可以用到python 字符串截取功能,比如: 复制代码 代码示例: s = 'ilovepython' s[1:5]的结果是love 当使用以冒号分隔的字符串,python返回一个新的对象,结果包含了以这对偏移标识的连续的内容,左边的开始是包含了下边界,比如上面的结果包含了s[1]的值l

替换空格(python/c++)

十年热恋 提交于 2020-03-02 05:05:22
题目描述 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 # -*- coding:utf-8 -*- class Solution: # s 源字符串 def replaceSpace(self, s): # write code here i=0 n=len(s) ss=[]##初始化定义算法的中间变量 for i in range(n): if s[i].isspace(): ss.append('%20')#判断为空的时候加入非空的时候不加入 else: ss.append(s[i]) i+=1 ss=''.join(ss)##把所有的都连在一起来 return ss    c++代码 #include<iostream> using namespace std; class Solution { public: void replaceSpace(char *str, int length) { if (str == nullptr || length<0) return; int count = 0, i = 0; while (str[i] != '\0') { if (str[i] == ' ') { count++; } i++; } int

剑指offer——python【第2题】替换空格

爷,独闯天下 提交于 2020-03-02 05:04:31
题目描述 请实现一个函数,将一个字符串中的每个空格替换成“%20”。 例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 理解 很容易想到用python里的字符串处理方法,比如replace和re.sub等 解题 首先用sub, # -*- coding:utf-8 -*- import re class Solution: # s 源字符串 def replaceSpace(self, s): return re.sub('\s','%20',s) 然后用replace # -*- coding:utf-8 -*- import re class Solution: # s 源字符串 def replaceSpace(self, s): return s.replace(' ','%20') 还有一种方法就是依次取遍历字符串里的每个字符,一旦发现有空格,就把'%20'添加到一个空字符串里,如果没有空格,就把原字符添加到字符串里 # -*- coding:utf-8 -*- import re class Solution: # s 源字符串 def replaceSpace(self, s): s_new="" for i in s: if i==" ": i="%20" s_new+=i else: s_new += i

字符串替换空格

孤人 提交于 2020-03-02 05:03:53
题目描述 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 解题思路 老实说,看到这个题目想到的就是字符串替换,但是面试题肯定不是这么简单的,那么怎么在原字符串上进行高效的替换呢?我们的字符串替换,主要的消耗是在移位上,每遇到一个空格,后面的字符串就往后移位,那么之前的移位都没有作用了。我们知道字符串的长度,知道替换字符串的长度,如果还知道空格的多少,那么这个字符串的长度就知道了。知道长度之后,只需要把数据放到响应的位置就可以了。 步骤: 1. 遍历字符串,统计出空格数量 2. 再遍历一次,完成替换 代码实现 普通解法,直接替换字符串 public static string ReplaceSpaceForSimple(string str) { return str.Replace(" ", "%20"); } 精妙解法数据移位 public static string ReplaceSpace(string str) { int count = 0; foreach (var item in str) { if (item == ' ') { count++; } } int oLength = str.Length; int length = oLength +

PHP替换指定字符串

点点圈 提交于 2020-03-02 04:57:11
在PHP中,有两个函数可以实现字符串替换,strtr()和str_repalce()函数。 首先我们简单了解下strtr()函数的定义及语法。 strtr:转换指定字符。 两个语法: 第一种语法: string strtr( string $str, string $from, string $to) 第一个参数表示待转换的字符串。第二个参数表示字符串中与将要被转换的目的字符 to 相对应的源字符。第三个参数表示字符串中与将要被转换的字符 from 相对应的目的字符。 第二种语法: string strtr( string $str , array $replace_pairs ) 第一个参数表示待转换的字符串。第二个参数表示以数组键值形式替换指定字符串。 下面我们就结合两个简单的代码示例为大家详细介绍其中最为常用的strtr()函数用法及使用技巧。 PHP中strtr函数替换字符串示例一: <?php $str = "PHP中文网"; echo strtr($str, 'P', 'A') . '<br>'; echo strtr($str, 'PP', 'z1') . '<br>'; echo strtr($str, 'P', ' ') . '<br>'; echo strtr($str, 'PH', '12') . '<br>'; echo "<hr>"; ?> 通过浏览器访问

str_replace函数详解

懵懂的女人 提交于 2020-03-02 04:49:52
在开发过程中,字符串的操作是很频繁的,这几天有看PHP手册中讲解str_replace函数的讲解,不是很明白,特作如下笔记,以作备忘。 函数原型: mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] ) 参数说明:$search要被搜索替换的字符串,$replace要替换搜索的字符串, $subject操作的字符串, &$count替换次数。 访函数返回在 $subject搜索 $search替换为 $replace的字符串或数组。 1、 $search和$replace都是字符串 示例:str_replace("a", "apple", "I like eat apple."); 说明:在$subject中将 $search字符串替换为 $replace字符串即可。 返回:"I like eapplet applepple."。 2、 $search为数组 示例:str_replace(array("a", "p"), "apple", "I like eat apple."); 说明:在$subject中将 $search数组中的各个字符串元素依次分别替换为 中$replace字符串即可。 返回:"I like eaappleapplelet

php正则替换函数-----preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )

江枫思渺然 提交于 2020-03-02 04:19:30
preg_replace — 执行一个正则表达式的搜索和替换 说明 mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] ) 搜索 subject 中匹配 pattern 的部分, 以 replacement 进行替换。 参数 pattern 要搜索的模式。可以使一个字符串或字符串数组。 可以使用一些 PCRE修饰符 。 replacement 用于替换的字符串或字符串数组。如果这个参数是一个字符串,并且 pattern 是一个数组,那么所有的模式都使用这个字符串进行替换。如果 pattern 和 replacement 都是数组,每个 pattern 使用 replacement 中对应的 元素进行替换。如果 replacement 中的元素比 pattern 中的少, 多出来的 pattern 使用空字符串进行替换。 replacement 中可以包含后向引用 \\ n 或 $ n ,语法上首选后者。 每个 这样的引用将被匹配到的第 n个捕获子组捕获到的文本替换。 n 可以是0-99, \\0 和 $0 代表完整的模式匹配文本。 捕获子组的序号计数方式为:代表捕获子组的左括号从左到右, 从1开始数。如果要在

PHP字符串相关函数

送分小仙女□ 提交于 2020-03-02 00:04:06
addcslashes — 以 C 语言风格使用反斜线转义字符串中的字符 addslashes — 使用反斜线引用字符串 bin2hex — 函数把包含数据的二进制字符串转换为十六进制值 chop — rtrim 的别名 chr — 返回指定的字符 chunk_split — 将字符串分割成小块 convert_cyr_string — 将字符由一种 Cyrillic 字符转换成另一种 convert_uudecode — 解码一个 uuencode 编码的字符串 convert_uuencode — 使用 uuencode 编码一个字符串 count_chars — 返回字符串所用字符的信息 crc32 — 计算一个字符串的 crc32 多项式 crypt — 单向字符串散列 echo — 输出一个或多个字符串 explode — 使用一个字符串分割另一个字符串 fprintf — 将格式化后的字符串写入到流 get_html_translation_table — 返回使用 htmlspecialchars 和 htmlentities 后的转换表 hebrev — 将逻辑顺序希伯来文(logical-Hebrew)转换为视觉顺序希伯来文(visual-Hebrew) hebrevc — 将逻辑顺序希伯来文(logical-Hebrew)转换为视觉顺序希伯来文(visual

LeetCode 11.在字符串中找出给定子字符串的起始位置

人盡茶涼 提交于 2020-03-01 23:20:59
题目描述 实现 strStr() 函数。 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。 示例 1: 输入: haystack = "hello", needle = "ll" 输出: 2 示例 2: 输入: haystack = "aaaaa", needle = "bba" 输出: -1 说明: 当 needle 是空字符串时,我们应当返回什么值呢?这是一个在面试中很好的问题。 对于本题而言,当 needle 是空字符串时我们应当返回 0 。这与C语言的 strstr() 以及 Java的 indexOf() 定义相符。 解题思路 双指针法:另一个指针为慢指针i,一个指针为i+子字符串的长度, 然后遍历字符串,利用subString(i,i+length)和子字符串做比较,如果相等则返回i 代码如下 class Solution { public int strStr(String haystack, String needle) { if (needle.equals("")) { return 0; }else if (haystack.equals("")) { return -1; }else { if (haystack.equals