本文实例讲述了Python实现查找匹配项作处理后再替换回去的方法。分享给大家供大家参考,具体如下:
这里实现Python在对找到的匹配项进行适当处理后,再替换掉原来那个匹配的项。
#!/usr/bin/python # coding=GBK import re # 对m作适当处理后返回结果 def fun(m): print("in: %s" %m.group(0)) ret = m.group(0).upper()[::-1] return ret src = "what [can] I do for can you[can] come on" pat = "(?<= )(can)(?= )" #print(re.search(pat, src).group(1)) #result = re.sub(pat,lambda m:m.group(1).upper()[::-1], src) # 使用lambda result1 = re.sub(pat, lambda m:m.group(0).upper()[::-1], src) print("result1: %s\n" %result1) # 在re.sub中使用函数 result2 = re.sub(pat, fun, src) print("result2: %s" %result2)
运行输出:
[zcm@python #112]$./del.py result1: what [NAC] I do for can you[NAC] come on in: can in: can result2: what [NAC] I do for can you[NAC] come on [zcm@python #113]$
看到了吗,所有匹配"[can]"的项都被“转换成大写并逆顺”了。
更多关于Python相关内容可查看本站专题:《Python字符串操作技巧汇总》、《Python常用遍历技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。
本文向大家介绍Python去除、替换字符串空格的处理方法,包括了Python去除、替换字符串空格的处理方法的使用技巧和注意事项,需要的朋友参考一下 个人想到的解决方法有两种,一种是 .replace(' old ',' new ') 第一个参数是需要换掉的内容比如空格,第二个是替换成的内容,可以把字符串中的空格全部替换掉. 第二种方法是像这样 先用 .split(str,num) (str
问题内容: 我是python的新手 我需要用一个正则表达式匹配所有情况并进行替换。这是一个示例子字符串->所需结果: 我想在我的代码中做到这一点: 而不是替换完之后的所有内容,它替换了所有内容并返回 re.sub是否有办法仅替换捕获组而不是整个模式? 问题答案: 您可以使用替换组: 注意,我将第一组(要保留的组)放在括号中,然后通过在替换字符串中使用修饰符(第一组)将其保留在输出中。
问题内容: 我试图从找到字符串中的,如果有串,我需要用相应的值来代替它 我有如下 我可以使用任何(左侧)字符串,我需要将其替换为右侧字符串值 以下是几个示例错误消息 下面是我的方法转换错误消息 以下是预期的输出:对于errorMessage1,它工作正常 但是对于errorMessage2它不起作用。它不会替换为 有没有办法找到多个字符串的出现并将其替换为其对应的值? 例如:查找并替换为 也想知道
本文向大家介绍java实现查找替换功能,包括了java实现查找替换功能的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了java实现查找替换功能的具体代码,供大家参考,具体内容如下 查找 查找下一处 替换 替换下一处 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
在我的一个程序中,我有以下方法,允许用户在ArrayList中输入与笔记本电脑关联的唯一ID。 所需输出如下: 如果用户输入的ID与ArrayList中的ID匹配,笔记本电脑及其规格将打印出来 如果ID不匹配,它将打印出“无效ID” 我非常接近实现这一目标;然而,我只能弄清楚如何让它打印出是否匹配列表中的每台笔记本电脑。例如,如果用户输入的ID与列表中三台笔记本电脑中的一台匹配,它将按如下方式打印
本文向大家介绍JAVA中正则表达式匹配,替换,查找,切割的方法,包括了JAVA中正则表达式匹配,替换,查找,切割的方法的使用技巧和注意事项,需要的朋友参考一下 正则表达式的查找;主要是用到String类中的split(); String str; str.split();方法中传入按照什么规则截取,返回一个String数组 常见的截取规则: str.split("\\.")按照.来截取 str.s