正则表达式,在另一个之前和之后提取单词

图章戒指

您好,我在使用正则表达式从文本中提取特定单词时遇到问题。线路:

limk ab1
limk ab2 helo
rest helo
ab3 limk helo
ab4 limk

我需要 3 个字母的单词作为输出,仅当limk它在我要查找的单词之前或之后,并且如果limk在之前它应该在行首,如果它之后 - 应该在行尾。在这一行应该只是我正在寻找的 limk 和 value。

预期输出:

ab1
ab4

我的正则表达式:

r'(^[0-9a-zA-Z]{3} \blimk\b)|(\blimk\b [0-9a-zA-Z]{3}$)'

有人可以解释我应该如何纠正它?谢谢

布布
^([0-9a-zA-Z]{3})\s+limk$|^limk\s+([0-9a-zA-Z]{3})$
  1. ^ 匹配行首
  2. [0-9a-zA-Z]{3} 匹配大小写ascii字符加上长度为3的数字
  3. \s+ 匹配 1 个或多个空格
  4. 匹配 limk
  5. $ 匹配行尾
  6. | 第二种选择的开始:
  7. ^ 匹配行首
  8. 匹配 limk
  9. \s+ 匹配一个或多个空格
  10. [0-9a-zA-Z]{3} 匹配大小写ascii字符加上长度为3的数字
  11. $ 匹配行尾

代码:

import re

s = """limk ab1
limk ab2 helo
rest helo
ab3 limk helo
ab4 limk"""

matches = [x[0] if x[0] != '' else x[1] for x in re.findall(r'(?m)^([0-9a-zA-Z]{3})\s+limk$|^limk\s+([0-9a-zA-Z]{3})$', s)]
for match in matches:
    print(match)

印刷:

ab1
ab4

看演示

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

正则表达式和Sed / Perl:匹配在ISN之前没有另一个单词的单词

来自分类Dev

正则表达式和Sed / Perl:匹配在ISN之前没有另一个单词的单词

来自分类Dev

找到另一个单词和双点定界符后,用正则表达式从文件中提取单词

来自分类Dev

用于IIS重写规则的正则表达式,在单词之前和最后一个斜杠之后

来自分类Dev

正则表达式在另一个单词之前添加字符(来自选择列表)

来自分类Dev

在另一个正则表达式匹配文本之后匹配文本的正则表达式

来自分类Dev

使用正则表达式匹配另一个单词的排列单词

来自分类Dev

如何使用正则表达式在单词组合之后和下一个空格之前查找包含单词和非单词字符的模式

来自分类Dev

在文字正则表达式中将单词替换为另一个

来自分类Dev

正则表达式在JavaScript中匹配一个单词而没有另一个单词

来自分类Dev

正则表达式:包含一个单词,不包含另一个单词

来自分类Dev

正则表达式接受一个单词而拒绝另一个单词

来自分类Dev

正则表达式检查字符串是否仅在字符的最后一个实例之后和另一个的最后一个实例之前具有数字

来自分类Dev

正则表达式匹配整个世界或以一个单词开头和/或以另一个单词结尾

来自分类Dev

正则表达式匹配每个以另一个单词开头的单词(包括特殊字符)

来自分类Dev

正则表达式如果字符串不包含另一个单词,则匹配该单词

来自分类Dev

一个正则表达式之前或之后具有模式匹配的正则表达式?

来自分类Dev

匹配不具有相同单词的关键字的正则表达式出现在另一个关键字之前

来自分类Dev

正则表达式在一个单词之后匹配特定单词

来自分类Dev

匹配直到正则表达式中的另一个表达式

来自分类Dev

grep +正则表达式以匹配位于最后一个单词之前的单词

来自分类Dev

正则表达式在字符的最后一次出现之后找到文本,直到另一个

来自分类Dev

如何从正则表达式中提取一个特定单词之后的第一个单词

来自分类Dev

正则表达式单词匹配并提取下一个单词

来自分类Dev

如果模式不在另一个patten之后,则正则表达式匹配-PHP

来自分类Dev

正则表达式匹配最后一个空格之后和方括号之前的字符串

来自分类Dev

正则表达式返回短语间单词作为另一个引用短语

来自分类Dev

正则表达式捕获最多2位数字和逗号(如果后面跟另一个单词和数字)

来自分类Dev

用另一个正则表达式替换正则表达式

Related 相关文章

  1. 1

    正则表达式和Sed / Perl:匹配在ISN之前没有另一个单词的单词

  2. 2

    正则表达式和Sed / Perl:匹配在ISN之前没有另一个单词的单词

  3. 3

    找到另一个单词和双点定界符后,用正则表达式从文件中提取单词

  4. 4

    用于IIS重写规则的正则表达式,在单词之前和最后一个斜杠之后

  5. 5

    正则表达式在另一个单词之前添加字符(来自选择列表)

  6. 6

    在另一个正则表达式匹配文本之后匹配文本的正则表达式

  7. 7

    使用正则表达式匹配另一个单词的排列单词

  8. 8

    如何使用正则表达式在单词组合之后和下一个空格之前查找包含单词和非单词字符的模式

  9. 9

    在文字正则表达式中将单词替换为另一个

  10. 10

    正则表达式在JavaScript中匹配一个单词而没有另一个单词

  11. 11

    正则表达式:包含一个单词,不包含另一个单词

  12. 12

    正则表达式接受一个单词而拒绝另一个单词

  13. 13

    正则表达式检查字符串是否仅在字符的最后一个实例之后和另一个的最后一个实例之前具有数字

  14. 14

    正则表达式匹配整个世界或以一个单词开头和/或以另一个单词结尾

  15. 15

    正则表达式匹配每个以另一个单词开头的单词(包括特殊字符)

  16. 16

    正则表达式如果字符串不包含另一个单词,则匹配该单词

  17. 17

    一个正则表达式之前或之后具有模式匹配的正则表达式?

  18. 18

    匹配不具有相同单词的关键字的正则表达式出现在另一个关键字之前

  19. 19

    正则表达式在一个单词之后匹配特定单词

  20. 20

    匹配直到正则表达式中的另一个表达式

  21. 21

    grep +正则表达式以匹配位于最后一个单词之前的单词

  22. 22

    正则表达式在字符的最后一次出现之后找到文本,直到另一个

  23. 23

    如何从正则表达式中提取一个特定单词之后的第一个单词

  24. 24

    正则表达式单词匹配并提取下一个单词

  25. 25

    如果模式不在另一个patten之后,则正则表达式匹配-PHP

  26. 26

    正则表达式匹配最后一个空格之后和方括号之前的字符串

  27. 27

    正则表达式返回短语间单词作为另一个引用短语

  28. 28

    正则表达式捕获最多2位数字和逗号(如果后面跟另一个单词和数字)

  29. 29

    用另一个正则表达式替换正则表达式

热门标签

归档