Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 替换字符串末尾的字符_Python_Regex - Fatal编程技术网

Python 替换字符串末尾的字符

Python 替换字符串末尾的字符,python,regex,Python,Regex,我想使用正则表达式替换文件中所有单词开头/结尾的内容。以下是一些示例案例: 以“ing”结尾的单词改为以“gni”结尾:clearing=cleargni 以“sub”开头的单词改为以“bus”开头:subtract=bustract 如何在列表中隔离这些单词并应用示例更改? 所有单词都是小写。使用\b确保单词的开头或结尾有某些内容: import re sentence = "..." converted = re.sub(r'ing\b', 'gni', re.sub(r'\bsub',

我想使用正则表达式替换文件中所有单词开头/结尾的内容。以下是一些示例案例:

  • 以“ing”结尾的单词改为以“gni”结尾:clearing=cleargni
  • 以“sub”开头的单词改为以“bus”开头:subtract=bustract
  • 如何在列表中隔离这些单词并应用示例更改?
    所有单词都是小写。

    使用
    \b
    确保单词的开头或结尾有某些内容:

    import re
    
    sentence = "..."
    converted = re.sub(r'ing\b', 'gni', re.sub(r'\bsub', 'bus', sentence))
    

    使用
    \b
    确保单词的开头或结尾有内容:

    import re
    
    sentence = "..."
    converted = re.sub(r'ing\b', 'gni', re.sub(r'\bsub', 'bus', sentence))
    

    应该将“Subtract”改为“Bustract”吗?哦,这都是不区分大小写的,我会加上它。欢迎使用堆栈溢出。请先检查堆栈溢出。请关注、、和。是否应该将“Subtract”更改为“Bustract”?哦,这都是不区分大小写的,我会加上它。欢迎使用堆栈溢出。请先检查堆栈溢出。关注、和。为什么要引入匹配对象?只要进行替换。如果在第一次迭代中不存在匹配项,则清除时的“ing”将替换为“gni”。然后清除将与第二个模式不匹配,sub返回它传递的字符串,以便清除被放回列表中。运行它来尝试一下。在这种情况下,将
    strings[i]=…
    更改为
    string=strings[i]=…
    这同样有效。我以前没见过这个。re.sub(r'ing\b',gni',re.sub(r'\bsub',bus',句子))为什么要引入匹配对象?只要进行替换。如果在第一次迭代中不存在匹配项,则清除时的“ing”将替换为“gni”。然后清除将与第二个模式不匹配,sub返回它传递的字符串,以便清除被放回列表中。运行它来尝试一下。在这种情况下,将
    strings[i]=…
    更改为
    string=strings[i]=…
    这同样有效。我以前没见过这个。re.sub(r'ing\b',gni',re.sub(r'\bsub',bus',句子))re.sub开头的小写字母r是什么?@Scherf:表示它是a。re.sub开头的小写字母r是什么?@Scherf:表示它是a。