使用正则表达式在包含模式的单词周围插入一些内容

温斯顿

我想知道一种简单的方法(例如,使用正则表达式)来完成以下文本处理任务:假设我有一个像“abc123def sd123sc p123dd apple”这样的句子。我想做这些:

  1. 查找包含“123”的单词;
  2. 删除文字中的“123”;
  3. 给新词添加前缀“P”和后缀“S”;

所以上面的例子会给出这个结果:“PabcdefS PsdscS PpddS apple”。

如何以最简单的方式执行此操作,例如在文本编辑器中使用正则表达式?我使用的是 Linux,所以任何使用命令行的方法对我也有好处。

处女

你可以用python来做

def getWords(sentence):
    words=sentence.strip().split()
    words123=[]
    for word in words:
        if '123' in word:
            words123.append("P"+word.replace('123','')+"S")
        else:
            words123.append(word)
    result=' '.join(words123)
    return result

f=open("c:\\temp\\file.txt","r",encoding='utf8')
sentence="1"
while sentence:
    sentence=f.readline()
    print(getWords(sentence))
f.close()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

正则表达式排除不包含单词但包含一些单词的行

正则表达式匹配单词,即使它包含一些字符 [dash,dot,..]

正则表达式-排除并包含一些单词

使用正则表达式匹配整个句子后如何匹配一些单词?

使用正则表达式在特定位置插入一些字符

使用正则表达式进行rsync仅包含一些文件

正则表达式:使用“或”正则表达式从字符串中删除多个单词会删除一些单词,但不能全部删除

如何捕获正则表达式模式周围的单词?

如何在python中使用正则表达式从字符串中提取一些单词模式

通过在正则表达式中添加一些内容来修改正则表达式

正则表达式中存在一些顺序无关紧要的单词

正则表达式中的一些单词异常

使正则表达式以惰性方式匹配,同时跳过一些单词

从正则表达式中排除一些单词

正则表达式for Word之前没有一些特定的单词

如何从正则表达式搜索中排除一些单词?

正则表达式:在特定单词之前和之后找到一些

如何使用正则表达式从乱码的文本中提取一些子文本模式?

Swift的正则表达式模式,有一些区别

正则表达式以匹配模式跟随一些字符串

使用 javascript 中的正则表达式对齐/填充这些字符串中的一些内容

用Python正则表达式替换包含一些文本的句子

如何在正则表达式匹配的开头添加一些内容?

正则表达式可以替换一些找到的内容吗?

正则表达式:组一些

.htaccess正则表达式的一些麻烦

使用正则表达式删除仅包含“ x”作为重复模式的单词

使用grep从基于正则表达式的文件中提取一些文本

使用正则表达式删除一些HTML标记,但保留Span标记