Regex 正则表达式:提取两个特定单词
我有这样一个字符串:Regex 正则表达式:提取两个特定单词,regex,Regex,我有这样一个字符串: 1:41死亡:10222 19:MOD_坠落导致多诺·达·博拉死亡 我需要提取第三个字符之前和之后的所有字符:即本例中的,以及by和killed之间的所有字符,即本例中的Dono da Bola 有什么建议吗 提前谢谢您。这样就可以了: :[^:]+?:[^:]+?:\s*(.+?) killed (.+?) by .+ 这与示例中的和Dono da Bola相匹配 说明: :匹配: [^:::+?匹配非冒号字符 :匹配: [^:::+?匹配非冒号字符 :匹配: \s
1:41死亡:10222 19:MOD_坠落导致多诺·达·博拉死亡
我需要提取第三个字符之前和之后的所有字符<代码>:即本例中的
,以及by
和killed
之间的所有字符,即本例中的Dono da Bola
有什么建议吗
提前谢谢您。这样就可以了:
:[^:]+?:[^:]+?:\s*(.+?) killed (.+?) by .+
这与示例中的
和Dono da Bola
相匹配
说明:
匹配:
:
匹配非冒号字符[^:::+?
匹配:
:
匹配非冒号字符[^:::+?
匹配:
:
匹配空白\s*
以非贪婪方式匹配所有字符((.+?)
)
匹配killed
和周围的空格killed
以非贪婪的方式匹配所有字符((.+?)
)Dono da Bola
匹配空格、by.+
、空格和字符串的其余部分by
- 这样做可以:
:[^:]+?:[^:]+?:\s*(.+?) killed (.+?) by .+
这与示例中的
和Dono da Bola
相匹配
说明:
匹配:
:
匹配非冒号字符[^:::+?
匹配:
:
匹配非冒号字符[^:::+?
匹配:
:
匹配空白\s*
以非贪婪方式匹配所有字符((.+?)
)
匹配killed
和周围的空格killed
以非贪婪的方式匹配所有字符((.+?)
)Dono da Bola
匹配空格、by.+
、空格和字符串的其余部分by
- 您的正则表达式是
^[^:]*:[^:]*:[^:]*:(.*?)killed(.*?)by.*$
第1组包含
(即空格
),第2组包含Dono da Bola
(即空格**Dono da Bola**space
)您的正则表达式是
^[^:]*:[^:]*:[^:]*:(.*?)killed(.*?)by.*$
第1组包含
(即空格
),第2组包含多诺达博拉
(即空格**多诺达博拉**空格
)谢谢!我只需要捕获最后一个字符串,所以我在(.+)
中添加了括号。也谢谢你的解释。谢谢!我只需要捕获最后一个字符串,所以我在(.+)
中添加了括号。也谢谢你的解释。