RegEx仅在单独使用时捕获同一单词

RegEx仅在单独使用时捕获同一单词,regex,Regex,我试图使用正则表达式来捕获同一个单词,但它仅出现在用逗号分隔项目的字符串中(没有复合词) 示例:Word,单词与另一个单词,单词,ConcatWord 需要匹配:“Word”、“Word”-无逗号 我使用的工具有一些限制,因此我不能使用“向前看”和“向后看” 编辑:无法选择要替换的匹配组,该函数只能查看完整匹配 此正则表达式可以工作,但在完全匹配中捕获逗号:(Word)[^\s-] 有人能帮我吗?我添加了一些正则表达式模式,试试这个。 我曾经 正向前瞻(?=,) 正向查找(?据我所知,我们得到

我试图使用正则表达式来捕获同一个单词,但它仅出现在用逗号分隔项目的字符串中(没有复合词)

示例:
Word,单词与另一个单词,单词,ConcatWord

需要匹配:
“Word”、“Word”
-无逗号

我使用的工具有一些限制,因此我不能使用“向前看”和“向后看”

编辑:无法选择要替换的匹配组,该函数只能查看完整匹配

此正则表达式可以工作,但在完全匹配中捕获逗号:
(Word)[^\s-]


有人能帮我吗?

我添加了一些正则表达式模式,试试这个。 我曾经

  • 正向前瞻
    (?=,)


  • 正向查找
    (?据我所知,我们得到了一个字符串和单词
    “word”
    ,并希望返回
    “word”
    的所有实例,它们是:

    • 紧接着前面和后面是逗号
    • 位于字符串的开头,后跟逗号
    • 位于字符串末尾,前面紧跟逗号;或
    • 字符串是
      “Word”
    可以匹配以下正则表达式

    (?:^|,)(Word)(?:,|$)
    
    每个匹配的
    “Word”
    实例都包含在捕获组1中


    我认为在捕获组中获取匹配的
    “Word”
    实例会有可疑的用途,因为在它们引用的字符串中没有指示
    “Word”
    的哪些实例。可能更有用的方法是将索引保存在
    “Word”实例的字符串中
    有匹配项的地方。但是,要做到这一点,必须知道使用的是哪种语言。

    如果不需要逗号,可以用空格替换逗号,然后在其上应用regrex。替换后,我使用逗号连接其余元素。我在系统上检查了输入字符串和输出,它正在捕获“Word”仅限。我使用了findall func。有什么问题吗?问题是完整匹配中的逗号我不明白您所说的“…我无法选择要提取的匹配中的哪个组,…”是什么意思。请通过编辑问题进行澄清。谢谢!在这种情况下我不能使用“向前看”和“向后看”。与此工具不兼容谢谢,Cary!我无法选择要在此工具中提取的匹配组